- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第8章指针ppt整理
(2) 用字符指针指向一个字符串。 定义一个字符指针。用字符指针指向字符串中的字符。 例: #includestdio.h int main() { char *string=I love China!; printf(%s\n,string); return 0; } I love China! char *string=I love China!; char *string; string=I love China!; 通过字符数组名或字符指针变量可以输出一个字符串。而对一个数值型数组,是不能企图用数组名输出它的全部元素的。如: int i[10] … printf(%d\n,i); 用%s可以对一个字符串进行整体的输入输出。 对字符串中字符的存取,可以用下标方法,也可以 用指针方法。 例8.18 将字符串a复制为字符串b。 char a[ ]={’k’,’e’,’y’}; printf(”%s\n”,a); #includestdio.h int main() {char a[ ]=I am a boy., b[20]; int i; for(i=0;*(a+i)!=’\0’;i++) *(b+i)=*(a+i); *(b+i)=’\0’; printf(string a is:%s\n,a); printf(string b is:); for(i=0;b[i]!=’\0’;i++) printf(%c, b[i]); printf(\n); return 0;} string a is:I am a boy. string b is:I am a boy. 例8.19用指针变量来处理例8.18问题。 #includestdio.h int main() { char a[]=I am a boy.,b[20],*p1,*p2; int i; p1=a; p2=b; for(;*p1!=′\0′;p1++,p2++) *p2=*p1; *p2=′\0′; printf(string a is:%s\n,a); printf(string b is:); for(i=0;b[i]!=′\0′;i++) printf(%c,b[i]); printf(\n); return 0; } 8.4.2 字符串指针作函数参数 将一个字符串从一个函数传递到另一个函数,可以用地址传递的办法,即用字符数组名作参数或用指向字符串的指针变量作参数。在被调用的函数中可以改变字符串的内容,在主调函数中可以得到改变了的字符串。 例8.20用函数调用实现字符串的复制。 (1) 用字符数组作参数。 #includestdio.h void copy_string(char from[ ], char to[ ]) {int i=0; while(from[i]!=’\0’) {to[i]=from[i];i++;} to[i]=′\0′; } int main( ) { char a[]=I am a teacher.; char b[]=you are a student.; printf(string a=%s\nstring b=%s\n,a,b); copy_string(a,b); printf(\nstring a=%s\nstring b=%s\n,a,b); return 0; } 程序运行结果如下: string_a=I am a teacher. string_b=you are a student. string_a=I am a teacher. string_b=I am a teacher. 在main函数中也可以不定义字符数组,而用字符型指针变量。main函数可改写如下: int main() { char *a=I am a teacher.; char *b=you are a student.; printf(string a=%s\nstring b=%s\n,a,b); copy_string(a,b); printf(\nstring a=%s\nstring b=%s\n,a,b); return 0; } (2) 形参用字符指针变量。程序如下: #includestdio.h void copy_string(char *from,char *to) { for(;*from!=′\0′;from++,to++) *to=*from; *to=′\0′; } int main() {char *a=I am
您可能关注的文档
最近下载
- 电子对抗原理与技术(第3版)全套PPT课件.pptx
- 冷拼课件教学课件.pptx VIP
- 最新2025年秋开学第一课主题班会PPT课件(含抗战胜利80周年内容).ppt
- 22G101 三维彩色立体图集.docx VIP
- 2024年秋季新北师大版七年级上册数学全册教案设计.docx
- 吴清忠:人体复原工程.pdf VIP
- 川崎 Kawasaki 2022款 Z 400 中文用户手册 使用说明书2021年4月14日印刷.doc VIP
- [北京]冷轧带钢工程薄板酸轧设备基础施工方案.doc VIP
- 全国教学能力比赛《声临其境·影视配音要旨》教案(一等奖).pdf
- (高清版)DB36∕T 713-2013 高速公路红砂岩路基施工技术规范 .pdf VIP
文档评论(0)