1、例如:char *p = “hello”
指针变量p 指向无名储存区域的首地址,而不是把无名储存区域的内容保存在p中,
2、字符数组与字符指针处理字符串有何不同
- 占用空间不同。数组所占空间取决于数组的长度,而指针只占用4字节,用以存放字符串的首地址。
- 赋值方式不同指针本身是变量,所以可以这样
char *p; p= "hello!";
赋值, 而数组不能这样char A[20];A = “hello”
;赋值,而要逐个赋值。
3、指针数组
语法 | 类型标识符 *数组名[整形常量表达式]; |
---|---|
样列 | int *p[3]; |
说明 | “int *p[3];”表示p是一个指针数组名,他有三个元素p[0],p1],p[2],每个元素都是一个指针,而这些指针都指向整形变量。 |
注意不要写成int (*p)[3];
这是上一篇说的指向数组的指针变量,表示长度为3的指向一维数组的指针变量。
指针数组比较适合于用来指向若干个字符串,是字符串处理更加灵活方便。