C语言字符串处理

  本文主要记录自己学习C语言字符串处理时常用的函数,方便以后使用查找,代码如下:

#include <stdio.h>
#include <string.h>//字符串需调用
#include <stdlib.h>//字符串、整型转换要用


int main(int argc, char *argv[])
{
	//1、strlen(字符串);测试字符串长度
	char str1[] = "sandeepin !";
	printf("字符串str1为:%s
", str1);
	int str1len = strlen(str1);//strlen求字符串实际长度,即不含'',str1实际长度为11,sizeof包括所有长度
	printf("字符串长度:%d
", str1len);

	//2、strcat(字符串1,字符串2);把字符串2连接到字符串1后面,结果放在字符串1中,字符串2不变
	char cat1[30] = "jfz", cat2[4] = "kxy";
	printf("
字符串1为:%s,字符串2为:%s
", cat1, cat2);
	printf("连接后为:%s 
", strcat(cat1, cat2));//字符数组1要有容纳两个字符串的空间。字符串1原有的''被字符串2第一个字符代替。

	//3、memset(字符串,'字符',字符数n);将字符串前n个字节设置成'字符'
	memset(str1, 'X', 3);
	printf("
字符串str1前3个设为X效果:%s
", str1);

	//4、strcpy(字符串Out,字符串In);将字符串In复制到字符串Out中,字符串Out原有内容被清空
	char str2[] = "12345678901234567890";
	printf("
字符串str2为:%s
", str2);
	strcpy(str2, str1);
	printf("字符串str1复制到字符串str2中效果:%s
", str2);

	//5、strlwr(字符串);将字符串转换为小写形式
	//6、strupr(字符串);将字符串转换为大写形式
	strlwr(str1);
	printf("
str1全小写:%s", str1);
	strupr(str1);
	printf("
str1全大写:%s
", str1);

	//7、strrev(字符串);将字符串所有字符的顺序颠倒过来(不包括空字符NULL)
	strrev(str1);
	printf("
str1颠倒:%s
", str1);

	//8、strset(字符串,'字符');把字符串中的所有字符都设置成'字符'。
	strset(str2, '6');
	printf("
str2全设置为6:%s
", str2);

	//9、strtok(字符串1,字符串2);分解字符串为一组标记串。字符串1为要分解的字符串,字符串2为分隔符字符串

	//10、itoa(整数,字符串,进制数);(要用stdlib.h)将整数赋值到字符串,最后要定义进制数,一般十进制
	int num = 1994;
	char str4[5];
	itoa(num, str4, 10);
	printf("
整数为:%d
", num);
	printf("字符串为:%s
", str4);

	//11、atof(字符串);(要用stdlib.h)字符串转double双精度浮点数
	char str5[8] = "1.23456";
	double num2;
	num2 = atof(str5);
	printf("
double双精度浮点数为:%f
", num2);

	system("pause");
	return 0;
}

  这里只列出了常用的一些,推荐大家参考《C参考手册》、《C语言库函数速查手册》,网上有人都做成了.chm文件,方便查询。

原文地址:https://www.cnblogs.com/sandeepin/p/12236537.html