C语言学习记录_2019.02.12

  • “学计算机一定要有一个非常强大的心理状态,计算机不是黑魔法,都是人想出来的,别人能够想的出来,那么,总有一天,我也能够想的出来。”
  • 指针类型的变量就是保存地址的变量。
  • int* p=&i;------P是一个指针,P里面的内容为变量i的地址,即说P指向了i;
  • int* p,q;------注意:*号仅仅加给了p,即语句意思为p为指针,而q为普通的整数类型;(c语言中无int*  这个类型)
  • %P:指针类型格式;
  • 运算符*:单目运算符,用来访问指针的值所表示的地址上的变量;即地址+*=变量的值;此时变量的值*i可以用来做左值和右值;
  • 区别:仅仅传递值得时候,传递得只是表面的参数值的大小,地址值上的变量的值并未改变;而使用*号运算符之后,则被赋予了访问的能力,即读和写的能力,此时可以改变地址所在的地方上的变量的值。
  • 函数参数表里面的数组,实质为指针,即数组的地址值;
  • 等价的四种函数原型:

int sum(int *ar);

int sum(int *);

int sum(int ar[]);

int sum(int []);

  • 数组变量是特殊的指针,即&a[0],a可以表示地址;但是数组的单元表示的是变量,即a[0],a[1],a[2]等表示变量;
  • []运算符可以对指针做,也可以对数组做;
  • *运算符可以对指针做,也可以对数组做;
  • int b[];--->int *const b;即数组变量不可以被赋值,数组是一个不可改变的指针;
  • 例:
    1. int a[] = {5, 15, 34, 54, 14, 2, 52, 72};
    2. int *p = &a[5];
    3. 则p[-2]为54;
    4. 即[]运算符可以对指针做;
  • char是一种整数,也是一种特殊的类型:字符;
  • 用单引号‘ ‘表示字符的字面量:’a‘,’1‘;即ASCLL码表中的量值;例:’1‘==49;
  • ’‘也是一个字符;
  • %c用来输入输出字符;
posted @ 2019-02-12 23:22  Bran_don  阅读(318)  评论(0编辑  收藏  举报