C语言:使用字符串处理函数

目录

前言:

使用字符串处理函数:

1.puts函数——输出字符串的函数

 2.gets函数——输入字符串的函数

3.strcat函数——字符串连接函数

 4.strcpy和strncpy函数——字符串复制函数

 5.strcmp函数——字符串比较函数

 6.strlen函数——测字符串长度的函数

 7.strlwr函数和strupr函数——分别为转换为小写和大写的函数

 总结:


前言:

在使用字符串处理函数时,应当在程序文件的开头使用

#include

把string.h文件包含到本文件中。

使用字符串处理函数:

1.puts函数——输出字符串的函数

其一般形式为:

puts(char str[])

    1.用puts函数输出的字符串中可以包含转义字符

    2.再用puts输出时将字符串结束标志'\0'转换成'\n',即输出完字符串后换行。

    3.puts函数在遇到空格也会输出。

示例代码:

#include
int main()
{
	char str[] = { "I Love C program" };
	char str1[] = { "Hello\nworld" };
	puts(str);
	puts(str1);
	return 0;
}

运行结果:

 2.gets函数——输入字符串的函数

其一般形式为:

gets(char str[])

   1.从终端输入一个字符串到字符数组,并得到一个函数值。

   2.该函数值是字符数组的起始地址。

示例代码:

#include
int main()
{
	char str[10];
	gets(str);
	puts(str);
	return 0;
}

3.strcat函数——字符串连接函数

其一般形式为:

strcat(char str1[],char str2[])

   1.其作用是把两个字符数组中的字符串连接起来,把字符串2连接到字符串1的后面,结果放在字符数组1中。

   2.字符数组1必须足够大,以便容纳连接后的新字符串。

   3.连接前两个字符串的后面都有'\0',连接时将字符串1后面的'\0'取消,只在新字符串最后保留'\0'。

示例代码:

#include
#include
int main()
{
	char str1[30] = {"People's Republic of "};
	char str2[] = { "China" };
	printf("%s", strcat(str1, str2));
	return 0;
}

运行结果:

 4.strcpy和strncpy函数——字符串复制函数

其一般形式为:

strcpy(字符数组1,字符串2)

    1.作用是将字符串2复制到字符数组1中去,并且字符数组1必须定义得足够大,以便容纳被复制的

     2."字符数组1"必须写成数组名形式(如str),"字符串2"可以是字符数组名,也可以是一个字符串常量。例如:strcpy(str1,"C program");作用与前面相同。

    3.不能用赋值语句将一个字符串常量或字符数组直接给一个字符数组。字符数组名是一个地址常量,它不能改变值,正如数值型数组名不能被赋值一样。

示例代码:

#include
#include
int main()
{
	char str1[10];
	char str2[] = { "China" };
	printf("%s\n", strcpy(str1, str2));
	printf("%s\n", strcpy(str1, "C program"));
	return 0;
}

 运行结果:

 strncpy(字符数组1,字符数组2,int index)

    1.作用是将字符串2中最前面index个字符复制到字符数组1中,取代字符数组1中原有的最前面index个字符。

     2.复制的字符个数n不应多余字符数组1中原有的字符(不包括'\0')。

示例代码:

#include
#include
int main()
{
	char str1[10] = {"loworld"};
	char str2[] = { "hello" };
	printf("%s\n", strncpy(str1, str2,3));
	printf("%s\n", strncpy(str1, "C program",3));
	return 0;
}

 运行结果:

 5.strcmp函数——字符串比较函数

其一般形式为:

strcmp(字符串1,字符串2)

     1.作用是比较字符串1和字符串2,比较的结果有函数值带回。

        (1)如果字符串1与字符串2相同,则函数值为0。

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

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

    2.字符串比较规则:将两个字符串自左向右逐个字符相比(按ASCII码值大小比较),直到出现不同的字符或遇到'\0'为止。

        (1)如全部字符相同,则认为两个字符串相等;

        (2)若出现不相同的字符,则以第1对不相同的字符的比较结果为准。

示例代码:

#include
#include
int main()
{
	char str1[10] = { "hello" };
	char str2[10] = { "helle" };
	if (strcmp(str1, str2)>0)
		printf("str1>str2:Yes");
	else
		printf("str1

 运行结果:

 6.strlen函数——测字符串长度的函数

其一般形式为:

strlen(字符数组)

示例代码:

#include
#include
int main()
{
	char str1[10] = { "hello" };
	int size = strlen(str1);
	printf("%d\n", size);
	printf("%d\n", strlen("world"));
	return 0;
}

 运行结果:

 7.strlwr函数和strupr函数——分别为转换为小写和大写的函数

其一般形式为:

strlwr(字符串);

strupr(字符串);

示例代码:

#include
#include
int main()
{
	char str1[10] = { "HELlo" };
	char str2[10] = { "WOrld" };
	printf("%s\n", strlwr(str1));//转换为小写
	printf("%s\n", strupr(str2));//转换为大写
	return 0;
}

 运行结果:

 总结:

整理了一下C语言中的字符串的相关操作,以后可以方便自己复习查找,同时也希望对大家有所帮助。

你可能感兴趣的:(c语言)