- 1、本文档共16页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
字符串处理运算
第12章 字符串处理运算
C语言中,字符串处理运算是常常遇见的。本章我们来学习字符串的输入、其它数据类型如何转换成字符串、相关操作函数以及字符串的输出。对于字符串的处理运算,我们可以自定义函数实现。当然,也可以通过调用库函数中包含的相关函数实现。这样使用起来可以简化我们的程序代码。本章主要从库函数调用的方式实现对字符串的处理。
12.1 字符串的输入
字符串的输入有两种方式:逐个字符输入和整个字符串输入。本节主要讲解这两方面内容。
12.1.1 逐个字符输入
通过逐个字符输入字符串的方式,我们用到的标准输入输出函数有scanf()和getchar()两个函数。scanf()函数我们已经在前面的章节中讲过,这里主要讲解getchar()函数。getchar()函数的基本调用形式以及说明如图12.1所示。
12.1.2 整个字符串输入
我们也可以通过整个字符输入的方式对字符串输入。整个字符串的输入函数有scanf()和gets()两个函数。gets()函数的调用形式如图12.3所示。
12.2 将其它类型转换成字符串的运算
其它数据类型可以转换成字符串,我们通过库函数“stdlib.h”中的几个函数来实现,如表12-1所示。
实现的功能
函数调用形式
参数
返回值
将浮点数value转换成字符串
ecvt(value, ndigit, decpt, sign);
value:要转换的浮点数,输入参数
ndigit:小数点后面的位数,输入参数
decpt:表示小数点的位置,输出参数
sign:表示符号,0为正数,1为负数,输出参数
返回字符串
将浮点数value转换成字符串
fcvt(value, ndigit, decpt, sign);
value:要转换的浮点数,输入参数
ndigit:小数点后面的位数,输入参数
decpt:表示小数点的位置,输出参数
sign:表示符号,0为正数,1为负数,输出参数
返回字符串
将浮点数value转换成字符串
gcvt(value, ndigit, buf);
value:被转换的值
ndigit:存储的有效数字位数
buf:结果的存储位置
转换后的字符串存于buf中,返回buf的指针
将无符号整型value转换成字符串,radix为转换时所用基数
ultoa(value, string, radix);
value: 要转换的数
string:字符串结果
rtadix:value的基数。
指向string的指针
将长整型value转换成字符串并返回该字符串,radix为转换时所用基数
ltoa(value, string, radix);
value::要转换的数值
string:转换后指向字符串的指针
radix:进制
指向string的指针
将整型value转换成字符串存入string, radix为转换时所用基数
itoa(value, string, radix);
value: 要转换的数值
string:转换后指向字符串的指针
radix:进制
指向string的指针
12.3 字符串的操作
12.3.1 字符串的复制
C语言中,我们可以把一个字符串复制到另一个字符串中,或者把一个字符串添加到另一个字符串的结尾。我们也可以指定一个字符串的n个字符复制到另一个字符串中。为了实现以上几个功能,我们需要使用到函数。并且这些函数都是被包含在“string.h”头文件中的,它们的功能调用形式如表12-2所示。
12.3.1 字符串的复制
实现的功能
函数调用形式
使用说明
返回值
将字符串复制
strcpy(dest,src);
把从src地址开始且含有NULL结束符的字符串赋值到以dest开始的地址空间
返回指向dest的指针
strdup(s);
复制字符串s
返回字符串
连接字符串
strcat(dest,src);
把src所指字符串添加到dest结尾处(覆盖dest结尾处的\0)并添加\0
返回指向dest的指针
把字符串的前n个字符添加到一个字符串的结尾处
strncat(dest,src,n);
把src所指字符串的前n个字符添加到dest结尾处(覆盖dest结尾处的\0)并添加\0
返回指向dest的指针
一个字符串复制到所在的数组中
stpcpy(dest,src);
把src所指由NULL结束的字符串复制到dest所指的数组中
返回指向dest结尾处字符(NULL)的指针
将字符串的前n个字符置为字符c
strnset(src,c, n);
将字符串src的前n个字符置为字符c
返回指向str的指针
将一个字符串中的所有字符都设为指定字符
strset(s,c);
将字符串s所有的字符置为字符c
返回指向s的指针
12.3.2
文档评论(0)