C语言本身没有设置一种类型来定义字符串变量

C语言本身没有设置一种类型来定义字符串变量

ID:38833886

大小:266.32 KB

页数:9页

时间:2019-06-20

C语言本身没有设置一种类型来定义字符串变量_第1页
C语言本身没有设置一种类型来定义字符串变量_第2页
C语言本身没有设置一种类型来定义字符串变量_第3页
C语言本身没有设置一种类型来定义字符串变量_第4页
C语言本身没有设置一种类型来定义字符串变量_第5页
资源描述:

《C语言本身没有设置一种类型来定义字符串变量》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第十章字符串C语言本身没有设置一种类型来定义字符串变量,字符串的存储完全依赖于字符数组,但字符数组又不等于是字符串变量。10.1用一维字符数组存放字符串用字符型一维数组存放字符串,并规定以字符‘’作为字符串结束标志。‘’占用存储空间,但不记入串的实际长度。字符串常量。如”hello”字符串常量给出的是地址值。如:char*p,s[10];s=“hello”;//错误p=“hello”;//正确字符型数组与字符串的区别10.1.1一维字符数组赋初值1、用一般数组赋初值方式给一维字符数组赋初值比较:charstr[10]={‘a’,’b’,’c’,’’}

2、;charstr[]={‘a’,’b’,’c’,’’};//实际是str[4]charstr[]={‘a’,’b’,’c’};//实际是str[3],是字符数组不是字符串2、在赋初值时直接赋字符串常量charstr[10]={“string!”};或:charstr[10]=“string!”;但charstr[7]=“string!”;可能破坏其他数据10.1.2程序执行过程中赋初值1、不能用赋值语句给字符数组整体赋一串字符例:charstr[10];str=“abc”;//错误再如:charstr1[10]=“abc”,str2[10];str2=str

3、1;//错误2、给数组元素逐个赋字符值,最后人为加’’例:charstr[10];inti;for(i=0;i<9;i++)scanf(“%c”,&str[i]);str[i]=‘’;10.2使指针指向一个字符串1、通过赋初值的方式使指针指向一个字符串。如char*ps1=“formone”;2、通过赋值运算使指针指向一个字符串:char*ps1;ps1=“fromone”;3、用字符数组作为字符串和用指针指向的一个字符串之间的区别。(字符数组是指针常量)10.3字符串的输入和输出输入输出字符串的必要条件:1)字符串输出时,输出项既可以是字符串或字符数组

4、名,也可以是已指向字符串的字符指针变量。2)字符串输入时,输入项可以时字符数组名,也可以是字符指针。1、用%s输入/输出例:charstr[10];scanf(“%s”,str);//不需要&str,注意空间分配printf(“%s”,str);2、用gets()/puts()输入/输出例:charstr[10];gets(str);//不要写成gets(str[10]);puts(str);10.4字符串数组字符串数组就是数组中的每个元素又都是一个存放字符串的数组。用一个二维字符数组存放多个字符串。字符串数组也可以在定义的同时赋初值。见P149图示例:char

5、[3][5]={“a”,“bb”,“ccc”};或:char[][5]={“a”,“bb”,“ccc”};可以定义字符型指针数组并通过赋初值来构成一个类似的字符串数组。例:char*pa[3]={“a”,“bb”,“ccc”};10.5用于处理字符串的函数1、字符串复制函数:strcpy(s1,s2)2、字符串连接函数:strcat(s1,s2)3、求字符串长度函数:strlen(s)4、字符串比较函数:strcmp(s1,s2)10.6程序举例例10.1~10.3

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

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

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