您的位置:首页 > 其它

使用字符串处理函数

2015-10-11 21:15 218 查看
首先介绍下使用通用的输入输出函数如何处理字符串

char str[20];
scanf("%s", str);    //输入
printf("%s", str);   //输出
这里将整个字符串一次输入或输出,用"%s"格式符,意思是对字符串(string)的输入输出。

注意
1.输出的字符中不包括结束符"/0"。

2.如果数组长度大于字符串的实际长度,也只输出到结束符"/0"结束。
3.如果一个字符数组中包含一个以上"/0",则遇到第一个"/0"输出就结束。
4.使用scanf函数输入字符串,系统会自动在字符串结尾加"/0",但是要注意不要超过字符数组长度。
5.使用scanf函数给多个字符数组输入,在输入时应以空格分隔字符串。

下面介绍几种常用的字符串处理函数

puts函数――输出字符串的函数

其一般形式是
puts(str);
其作用是将一个字符串(以'/0'结束的字符序列)输出到终端。
用puts函数输出的字符串中可以包含转义字符。

gets函数――输入字符串的函数
其一般形式是

gets(str);
其作用是从终端输入一个字符串到字符数组,并且得到一个函数值。该函数值是字符数组的起始地址。
注意:用puts和gets函数只能输入或输出一个字符串。

strcat函数――字符串连接函数

其一般形式为

strcat(str1, str2);
strcat是string catenate的缩写。其作用是把两个字符数组的字符串连接起来,把字符串2接到字符串1的后面,结果放到str1中,函数调用后得到str1的地址。

注意
1.str1要足够大,以便容纳连接后的新字符串。
2.连接前两个字符串后面都有'/0',连接时将字符串1后的'/0'取消,只在新串最后保留'/0'。

strcopy和strncopy函数――字符串复制函数
其一般形式是

strcopy(字符数组1,字符串2);
strcopy是string copy的缩写,它表示“字符串复制函数”,作用是将字符串2复制到字符数组1中去。
注意:
1.字符数组1必须足够大,以便容纳被复制的字符串2.
2.字符数组1必须是数组名形式,“字符串2”可以是字符数组名,也可以是一个字符串常量。
3.可以用strncopy函数将字符串2的前面n个字符复制到字符数组1中。

strcmp函数――字符串比较函数

其一般形式是

strcmp(str1,str2);
strcmp是string compare的缩写,它的作用是比较字符串1和字符串2,比较的结果由函数值带回。
a. str1=str2,函数值为0

b. str1>str2,函数值为一个正整数
c. str1<str2,函数值为一个负整数

strlen函数――测字符串长度的函数

其一般形式是

strlen(字符数组);
strlen是string length的缩写,它是测试字符串长度的函数。函数的值为字符串中实际的长度(不包括'/0'在内)。

strlwr函数――转换为小写的函数

strupr函数――转换为大写的函数

注意
在使用字符串函数时,应当在程序文件开头用
#include <string.h>
把“string.h”文件包含在本文件中。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: