字符串的指针和指向字符串的指针变量[优质文档]字符串的指针和指向字符串的指针变量[优质文档]
10.4字符串的指针和指向字符串的指针
在,语言中,既可以用字符数组表示字符串,也可用字符指针变量来表示;引用时,既可以逐个字符引用,也可以整体引用。
字符串在内存中的起始地址称为字符串的指针,可以定义一个字符指针变量指向一个字符串。
1( 定义字符指针变量
? char *ps1;
ps1="form one";
char *ps1="form one";
? char str[ ]= "form one", *ps1;
ps1=str;
注意: 字符指针变量p...
字符串的指针和指向字符串的指针变量[优质文档]
10.4字符串的指针和指向字符串的指针
在,语言中,既可以用字符数组表示字符串,也可用字符指针变量来表示;引用时,既可以逐个字符引用,也可以整体引用。
字符串在内存中的起始地址称为字符串的指针,可以定义一个字符指针变量指向一个字符串。
1( 定义字符指针变量
? char *ps1;
ps1="form one";
char *ps1="form one";
? char str[ ]= "form one", *ps1;
ps1=str;
注意: 字符指针变量ps1中,仅存储串常量的地址,而串常量的内容(即字符串本身),是存储在由系统自动开辟的内存块中,并在串尾添加一个结束标志’\0’。
2. 引用
1)逐个引用
main()
{ char *string="I am fine.";
for(; *string!=’\0’; string++)
printf("%c", *string);
printf("\n");
}
2) 整体引用
main()
{ char *string="I am fine.";
printf("%s\n",string);
}
程序说明:printf("%s\n",string);语句
通过指向字符串的指针变量string,整体引用它所指向的字符串的原理:系统首先输出string指向的第一个字符,然后使string自动加,,使之指向下一个字符;重复上述过程,直至遇到字符串结束标志。
注意:
其它类型的数组,是不能用数组名来一次性输出它的全部元素的,只能逐个元素输出。
3.字符指针变量与字符数组之比较
虽然用字符指针变量和字符数组都能实现字符串的存储和处理,但二者有区别.
(1)存储内容不同。
字符指针变量中存储的是字符串的首地址,而字符数组中存储的是字符串本身(数组的每个元素存放一个字符)。
(2)赋值方式不同。
对字符指针变量,可采用下面的赋值语句赋值:
char *pointer;
pointer="This is a example.";
而字符数组是在定义时初始化。
char char_array[20]="This is a example."
(3)指针变量的值是可以改变的,字符指针变量也不例外;而数组名代表数组的起始地址,是一个常量,而常量是不能被改变的。
本文档为【字符串的指针和指向字符串的指针变量[优质文档]】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。