C语言指针
C语言中,指针尤为重要。
1可以把指针看作是一个数据类型。
打印结果:
2 在指针声明时,*号表示指针变量。 指针使用时,*号表示操作指针所指向的内存空间中的值。
*p相当于通过地址(p变量的值)找到一块内存,然后操作内存。
*p放在等号的左边赋值(给内存赋值)
*p放在等号右边赋值(从内存中获取值)
3 指针变量和他所指的内存是两个不同的概念:
1 给p赋值P=0x1111;只会 改变指针变量的值,不会改变所指的内容,如:p+=1;p++
2 给P赋值 p=’a’;不会改变指针变量的值,只会改变所指的内存块的值
3 =左边*p 表示 给内存赋值,=右边*p表示 取值 含义不同
4 指针是一种数据类型,是指它指向的内存空间的数据类型。
指针步长(p++)根据所指内存的数据类型来确定。如 int \* p=NULL; printf("%d%d",p,p+1)
则结果为一个 0 一个 4
*间接赋值(*p)是指针存在的最大意义。
1)两码事:指针变量和他指向的内存块变量
2)条件反射 指针指向某个变量,就是把变量地址给指针
3) p 间接赋值成立条件(3个) 2个变量(一个实参 一个形参)
不断 改变指针变量
还没有评论,来说两句吧...