第十章字符串

上传人:沈*** 文档编号:163829596 上传时间:2022-10-23 格式:PPT 页数:12 大小:177.50KB
返回 下载 相关 举报
第十章字符串_第1页
第1页 / 共12页
第十章字符串_第2页
第2页 / 共12页
第十章字符串_第3页
第3页 / 共12页
点击查看更多>>
资源描述
第十章 字符串C语言本身没有设置一种类型来定义字符串变量,字符串的存储完全依赖于字符数组,但字符数组又不等于是字符串变量。10.1 用一维字符数组存放字符串l用字符型一维数组存放字符串,并规定以字用字符型一维数组存放字符串,并规定以字符符0作为字符串结束标志。作为字符串结束标志。0占用存储占用存储空间,但不记入串的实际长度。空间,但不记入串的实际长度。l字符串常量。如字符串常量。如”hello”l字符串常量给出的是地址值。如字符串常量给出的是地址值。如:char*p,s10;s=“hello”;/错误错误 p=“hello”;/正确正确l字符型数组与字符串的区别字符型数组与字符串的区别10.1.1 一维字符数组赋初值1、用一般数组赋初值方式给一维字符数组赋初值、用一般数组赋初值方式给一维字符数组赋初值比较:比较:char str10=a,b,c,0;char str=a,b,c,0;/实际是实际是str4 char str=a,b,c;/实际是实际是str3,是字符,是字符数组不是字符串数组不是字符串2、在赋初值时直接赋字符串常量、在赋初值时直接赋字符串常量 char str10=“string!”;或:或:char str10=“string!”;但但 char str7=“string!”;可能破坏其他数据可能破坏其他数据10.1.2 程序执行过程中赋初值1、不能用赋值语句给字符数组整体赋一串字符 例:char str10;str=“abc”;/错误再如:char str110=“abc”,str210;str2=str1;/错误2、给数组元素逐个赋字符值,最后人为加0例:char str10;int i;for(i=0;i9;i+)scanf(“%c”,&stri);stri=0;10.2 使指针指向一个字符串1、通过赋初值的方式使指针指向一个字符串。如 char*ps1=“form one”;2、通过赋值运算使指针指向一个字符串:char*ps1;ps1=“from one”;3、用字符数组作为字符串和用指针指向的一个字符串之间的区别。(字符数组是指针常量)10.3 字符串的输入和输出l输入输出字符串的必要条件:1)字符串输出时,输出项既可以是字符串或字符数组名,也可以是已指向字符串的字符指针变量。2)字符串输入时,输入项可以时字符数组名,也可以是字符指针。1、用%s输入/输出例:char str10;scanf(“%s”,str);/不需要&str,注意空间分配 printf(“%s”,str);2、用gets()/puts()输入/输出例:char str10;gets(str);/不要写成gets(str10);puts(str);10.4 字符串数组l字符串数组就是数组中的每个元素又都是一个存放字符串的数组。l用一个二维字符数组存放多个字符串。l字符串数组也可以在定义的同时赋初值。见P149图示例:char 35=“a”,“bb”,“ccc”;或:char 5=“a”,“bb”,“ccc”;l可以定义字符型指针数组并通过赋初值来构成一个类似的字符串数组。例:char*pa3=“a”,“bb”,“ccc”;10.5 用于处理字符串的函数1、字符串复制函数:strcpy(s1,s2)2、字符串连接函数:strcat(s1,s2)3、求字符串长度函数:strlen(s)4、字符串比较函数:strcmp(s1,s2)10.6 程序举例
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!