概述
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.数组最后一个元素为‘ ’。
2.字符串的长度不要超过数组的大小,一般要确保数 组元素数比字符串长度多1。
用字符串指针指向一个字符串也可以表示一个字符串。
12、char string1[] = “C Language”; char *string2 = “C Language”;
1.数组名string1是常量,存放的是以‘ ’结束的字符串;
指针string2是变量,存放的是字符串的首地址。
2.可以将字符串直接赋给string2,而string1只能逐个元素依次赋值。
最后
以上就是烂漫大白为你收集整理的指针知识点的总结的全部内容,希望文章能够帮你解决指针知识点的总结所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复