2019-12-31 嵌入式二十一期 第三周第二天

主要内容:今天老师主要讲了指针。  分为首地址,存的内容,名字。

只能从首地址访问,&a:找到盒子的首地址。int *p:定义指针,用来存放地址,地址用%d输出。

整型指针只能表示整型变量的地址。没有取地址,指针随机指向。

解引用:  int b=2;  int *p  p=&b;  printf("%d",*p);  输出2。*(p-1) 地址减一个整型变量。

指针和指针不能计算,定义好的指针可以加或减一个数,不可以乘除。

数组名可以作为整个数组的首地址使用,二维数组每一行都有一个首地址。

二维数组中:

解引用行是第一个当前行第一个元素,解引用整个数组是第一行首地址。

输出a[0]是第一行首地址,输出*a是第一行首地址,*a[0]是第一行第一个元素,**a是第一行第一个元素。

*(a+1)跳到下一行输出首地址,*(a[0]+1) 输出下一个数,   **(a+1)  下一行第一个元素。

s是整个字符串的首地址  char s[10]={"jkl","fgh"};   printf("%s",*s); 输出jkl。   printf("%c",*s); 输j。

传参  fun(p)   int fun(int *p)    { printf("%d",*p);  }

重点难点:两次解引用中间不好理解。

掌握程度,今日内容已全部掌握。

你可能感兴趣的:(2019-12-31 嵌入式二十一期 第三周第二天)