随手整理今天学的指针
2016-10-18 本文已影响29人
唐宇威威
整理一下今天学的东西,把自己有点遗忘的东西
- 1.打印指针变量所占的字节数。
printf("int 占%ld个字节\n",sizeof(int ));
int,char,float*在32位机占4个字节,在64位机占8个字节。 - 2.在使用*p之前需要对p赋地址。
不可以int *p;
*p=8; - 3.定义指针时: int *p=&a;
赋值时 : p=&a;
在printf中用%p指代指针变量 printf("%p",p); - 4.访问1维数组第i个元素地址 (1)&arr[i] (2)arr+i (3)p+i (4) &p[i]
- 5.constant常量
const修饰值不可变。const int a=9;
或者int const a=9;
在指针中const如果放在*左边代表这个变量将来如果用p去访问时,内容只读 - 6.数组名就是首元素的地址,数组其实是const修饰的
- 7.二级指针:
int *p=&a;
int **q=&p;
那么
(q)=a