指针知识点的总结

1、指针就是内存地址:即地址指向该变量单元。


专门用来存放另一个变量的地址(即指针),则它称为“指针”。


2、变量的值和地址:

(1)Int *pointer,a; pointer = &a;&给出该变量的地址


(2)Int *pointer,a; *pointer = a;*意思是取出存储被指向地址中的数值。


(3)指针的目的:要通过指针能够找到被指的变量,或者说要通过指针间接访问到被指的变量。


(4)指针变量定义:类型 *指针变量名;


(5)指针变量使用之前必须赋予具体的值,只能赋地址。指针没有初始化会出现系统混乱。

int *pointer = NULL 或int *pointer =0。


(6)指针变量值的改变,相当于指针指向的改变。


3、void类型的指针:可以指向任何的变量,但是在使用时,需要进行强制类型转换后才能使用 。


4、指针运算:


所有类型指针变量的大小都是4个字节。


5、指针之间只有减法运算,没有其他的运算。


pnID – pnID1 = (pnID - pnID1 )/sizeof(指针指向类型)


6、数组元素指针:就是数组元素的地址。


7、int a[10];Int *p;p=&a[0]<==>p=a;(注意:数组名a不代表整个数组,只代表数组首元素的地址。)


8、引用数组元素时的指针运算


加一个整数(用+或+=),如p+1(指向同一数组中的下一个元素)


减一个整数(用-或-=),如p-1(指向同一数组中的上一个元素)


自加运算,如p++,++p

自减运算,如p--,--p


两个指针相减,如p1-p2 (只有p1和p2都指向同一数组中的元素时才有意义)。


*(p+i)或*(a+i)是p+i或a+i所指向的数组元素,即a[i]。


9、指针引用数组的方法:


(1) 下标法,如a[i]形式。


(2) 指针法,如*(a+i)或*(p+i)。


( 3 )数组名计算数组元素地址,找出元素的值。


10、指针变量的引用:


(1)*p++,由于++和*同优先级,结合方向自右而左,等价于*(p++)。


(2)实参数组名是指针常量,但形参数组名是按指针变量处理。


(3)指针变量以实参的形式传递给函数,可以在函数中改变实参的值。


11、字符数组表示字符串。


注意:1.数组最后一个元素为‘\0’。


  2.字符串的长度不要超过数组的大小,一般要确保数       组元素数比字符串长度多1。


用字符串指针指向一个字符串也可以表示一个字符串。


12、char string1[] = “C Language”; char *string2 = “C Language”;


1.数组名string1是常量,存放的是以‘\0’结束的字符串; 


指针string2是变量,存放的是字符串的首地址。


2.可以将字符串直接赋给string2,而string1只能逐个元素依次赋值。



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值