char型指针,就是字符型指针,比如char
*p;表示定义要给字符型指针,用来存储字符地址。
字符型指针
是个类型
假如
char
*p
定义一个字符型指针变量
p
需要注意的是
这里
char
*
是类型
p才是变量
char
*字符型指针,指向一个字符;
char
**
指向字符型指针的指针;
char**最常使用在main函数中:
int
main(int
argc,char**
argv);
等同于
int
main(int
argc,char
*
argv[])
等同于int
main(int
argc,string
argv)(C语言中并不直接包含字符串类型,此处便于理解,所以使用string类型)由此看来char**实际上就是指向一系列字符,类似于字符串;
定义一个字符指针
用字符指针指向一个字符串。可以不定义字符数组,而定义一个字符指针。
如
char
*string="i
love
china!";
定义了一个字符指针变量string,用字符串常量"i
love
china!",对它进行初始化。c语言对字符串常量是按字符数组处理的,在内存中开辟了一个字符数组用来才存放该字符串常量。对字符指针变量初始化,实际上是把字符串第1个元素的地址(即存放字符串的字符数组的首元素地址)赋给string。