首页 理论教育字符串处理函数及示例|C语言程序设计实用教程

字符串处理函数及示例|C语言程序设计实用教程

【摘要】:在C 语言编译系统中有丰富的字符串处理函数,为用户使用提供了方便。字符串1<字符串2,函数值为一负整数。

在C 语言编译系统中有丰富的字符串处理函数,为用户使用提供了方便。若要使用字符串输入/输出函数,须将头文件stdio.h 包含到源文件中,使用其他字符串函数时须包含头文件string.h。

1.字符串输入函数gets

格式:

功能:从键盘输入一个字符串到字符数组,并且得到一个函数值,即返回字符数组的起始地址。字符串输入时,以回车键Enter 结束。用gets()读入的字符串中不包括换行符,而是在字符串最后加上了一个‘\0’。例如:

键盘输入:Computer↙

将输入的字符串“Computer”送给字符数组str。

2.字符串输出函数puts

格式:

功能:把字符数组中的字符串(以‘\0’结束)输出到显示器。在输出时将‘\0’转换为‘\n’,且输出的字符串中可以包含转义字符,等价于printf(“%s\n”,str)。例如:

执行结果:

注意:用gets 和puts 函数只能输入/输出一个字符串,不能写成:

3.两个字符串连接函数strcat

格式:

功能:将字符数组2 连接到字符数组1 的后面,末尾加一个‘\0’,结果存放在字符数组1中,并得到字符数组1 的地址。例如:

输出结果:

说明:

(1)字符数组1 必须足够长,以便能容纳连接后的全部内容。

(2)连接前两个字符串末尾都要有结束符‘\0’,连接后新字符串末尾保留一个‘\0’。

4.字符串复制函数strcpy

格式:

功能:将字符数组2 的内容复制到字符数组1 中。例如:

执行结果:

说明:

(1)字符数组str1 的长度必须足够大,以便容纳被复制的字符串str2。(www.chuimin.cn)

(2)字符数组str1 必须写成数组名的形式,字符串str2 可以是字符数组名字,也可以是字符串常量。例如:

(3)复制时连同‘\0’一起复制。

(4)若希望将字符串或字符数组str2 前面几个字符复制到字符数组str1 中,strcpy 函数格式如下:

例如:

5.字符串比较函数strcmp

格式:

功能:将两个字符串按ASCII 码值比较,并返回比较结果。参与比较的两个字符串可以是数组名,也可以是字符串常量。比较时从左至右逐个进行,直到出现不同的字符或遇到‘\0’为止。如全部字符相同,认为相等;若出现不相同的字符,则以第一个不相同的字符的比较结果为其结果。

(1)字符串1=字符串2,函数值为0。

(2)字符串1>字符串2,函数值为一正整数。

(3)字符串1<字符串2,函数值为一负整数。

举例:

6.测定字符串长度函数strlen

格式:

功能:测试字符串的长度,可以是字符数组名,也可以是字符串常量,返回字符串长度值,不包括‘\0’。例如:

程序运行结果:

7.大写转换小写函数strlwr

格式:

功能:将字符串常量或字符数组中的大写字母转换为小写字母。例如:

程序运行结果:

8.小写转换大写函数strupr

格式:

功能:将字符串常量或字符数组中的小写字母转换为大写字母。例如:

程序运行结果: