基本常识
指针定义:char *p
指针赋值:p=&a
通过指针输入:
*p='A'
*p=getchar();
scanf("%c,p");
通过指针输出:
putchar(*p);
printf("%c",*p);
指针移动:p=p+1
变量加减:*p=*p+1
指针未移动,引用相邻的值:*(p+1)
指针距离:(p+1)-p,即储存空间的物理距离。
变量差额:a[1]-a[0]
~
拓展常识
1.指针主要配合数组使用
2.指针没有指向变量,就对指针赋值(*q=10),是不合法的。
也可理解为,指针没有指向变量,指针是没有意义的,指针不存在。
也可理解为,指针不能直接获取值,指针只能获取地址,间接获取值。因此*又称间接访问运算符。
3.指针可以通过形参改变实参。
4.基类型不同的指针不能混合使用。
5.指针也是一种变量,指针也有地址。
6.指针加减、指针距离、指针移动的最小单位是1个存储单元。
1代表单位存储单元长度,根据基类型不同而不同,
char占1字节,int占4字节,double占8字节。
7.存储数据单位换算
8比特(位)=1字节,8bit=1B
1024字节=1千字节,1024B=1KB
1024千字节=1兆,1024KB=1M
1024兆=1G,1024M=1G
1024G=1T
领取专属 10元无门槛券
私享最新 技术干货