C语言程序设计_李学刚_电子课件12单元5 构造类型程序设计_字符指针.ppt

C语言程序设计_李学刚_电子课件12单元5 构造类型程序设计_字符指针.ppt

ID:51963642

大小:1.41 MB

页数:13页

时间:2020-03-26

C语言程序设计_李学刚_电子课件12单元5 构造类型程序设计_字符指针.ppt_第1页
C语言程序设计_李学刚_电子课件12单元5 构造类型程序设计_字符指针.ppt_第2页
C语言程序设计_李学刚_电子课件12单元5 构造类型程序设计_字符指针.ppt_第3页
C语言程序设计_李学刚_电子课件12单元5 构造类型程序设计_字符指针.ppt_第4页
C语言程序设计_李学刚_电子课件12单元5 构造类型程序设计_字符指针.ppt_第5页
C语言程序设计_李学刚_电子课件12单元5 构造类型程序设计_字符指针.ppt_第6页
C语言程序设计_李学刚_电子课件12单元5 构造类型程序设计_字符指针.ppt_第7页
C语言程序设计_李学刚_电子课件12单元5 构造类型程序设计_字符指针.ppt_第8页
C语言程序设计_李学刚_电子课件12单元5 构造类型程序设计_字符指针.ppt_第9页
C语言程序设计_李学刚_电子课件12单元5 构造类型程序设计_字符指针.ppt_第10页
资源描述:

《C语言程序设计_李学刚_电子课件12单元5 构造类型程序设计_字符指针.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、5.5字符指针主讲人张静常州信息职业技术学院2、了解指针型函数3、能利用字符指针编写程序解决实际问题知识/能力目标1、理解和掌握字符指针的概念(一)用字符数组实现(二)用字符串指针指向一个字符串intmain(){chars[]=”IloveChina!”;printf("%s",s);printf(“%s”,s+7);}IloveChina!China!intmain(){char*s=”IloveChina!”;printf("%s",s);printf(“%s”,s+7);}一、字符串

2、的表示IloveChina!s[0]s[1]s[2]s[3]s[4]s[5]s[6]s[7]s[8]s[9]s[10]s[11]s[12]s[13]ss+7【例5-9】用字符指针实现求字符串长度。#include#defineN50intlen(char*s){intn=0;while(*(s+n)!='')n++;returnn;}intmain(){charstr[N];printf("输入字符串:");gets(str);printf("字符串的长度为:%d",len

3、(str));return0;}普通数组作为函数参数时要同时向函数传递数组的大小,但字符指针作为函数参数传递字符串时由于字符串可以通过’’的结束标志来判断字符串的大小,因此不需要向函数传递字符串的大小,只要传递字符指针,在函数中就可以操作整个字符串了。【例5-10】分别统计字符串中大写字母、小写字母、空格及数字字符的个数。操作演示(三)用字符指针数组指向多个字符串指针数组定义的一般形式:[存储类别]类型标识符*指针数组名[常量表达式];如:char*a[3];定义了一个指针数组a,含有3个元素a[0],

4、a[1],a[2]它们都是指针变量,并都指向字符类型。二、字符指针变量与字符数组的区别用字符数组和字符指针变量都可实现字符串的存储和运算。但是两者是有区别的。字符指针变量与字符数组区别之一字符指针变量本身是一个变量,用于存放字符串的首地址。字符数组是由若干个数组元素组成的,它可用来存放整个字符串。即,定义字符指针变量,只需要给该指针变量分配4个字节的空间用于存放字符串的首地址值即可,而字符数组所占用的空间就要根据该数组的大小来决定了,显然,在空间的开销上,使用字符指针更加节省。二、字符指针变量与字符数组的区

5、别字符指针变量与字符数组区别之二对字符指针方式char*ps="CLanguage";可以写为:char*ps;ps="CLanguage";/*ps是指针变量*/而对数组方式charst[]={"CLanguage"};不能写为:charst[20];st={"CLanguage"};/*st是地址常量*/而只能对字符数组的各元素逐个赋值。字符指针变量与字符数组区别之三字符指针在接受键盘输入字符串时,必须先开辟存储空间。对于字符数组charstr[10];可以用scanf(“%s”,str);语句进行输入

6、;而对于字符串指针char*cp;则不能直接用scanf(“%s”,cp);语句进行输入;必须要先给cp开辟存储空间才可以,即:char*cp,str[10];cp=str;scanf(“%s”,cp);才是正确的。做一做【课堂实践5-8】函数功能:把一个字符串的内容复制到另一个字符串中,并且不能使用strcpy函数。函数cprstr的形参为两个字符指针变量。pss指向源字符串,pds指向目标字符串。三、指针型函数在C语言中允许一个函数的返回值是一个指针(即地址),这种返回指针值的函数称为指针型函数。定义指

7、针型函数的一般形式为:[存储类别]类型标识符*函数名(形参表){……/*函数体*/}【例5-11】本程序是通过指针函数,输入一个1~7之间的整数,输出对应的星期名。#includechar*day_name(intn){staticchar*name[]={“Illegalday”,"Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"};return((n<1

8、

9、n>7)?name[0]:name[n]

10、);}intmain(){inti;printf("请输入一个整数(1-7):");scanf("%d",&i);printf("%2d-->%s",i,day_name(i));}做一做【课堂实践5-9】编写函数:求字符串中最大字符的地址并返回该地址,指向字符串的指针作为函数的参数。再见

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。