基于string头文件
1:字符串长度
strlen
字符串长度:不计算\0 .
char s1[] = "hello";
int len = strlen(s1); //len = 5
printf("len=%d\n",len);
sizeof();
计算数组,变量占用的空间大小,包含\0
len = sizeof(s1); //len=6
printf("len=%d\n",len);
2:字符串拷贝
strcpy();
将一个字符串完全拷贝到另一个字符串中
第一个参数:目标空间
第二个参数:源空间
char s1[] = "Hello World!";
char s2[123] = {0};
strcpy(s2,s1);
printf("s2:\t%s\n",s2);
strncpy():
//拷贝指定长度的 字符串
char s1[] = "Hello World!";
char s2[123] = {0};
strncpy(s2,s1,5);
printf("s2:\t%s\n",s2);
3:字符串追加
strcat
//将一个字符串全部追加到另一个字符串的尾部
第一个参数:被追加的参数
第二个参数:追加的参数
PS:字符串数组定以后,务必要初始化
char s[128] = "Hello World!!";
char s1[128] = "12345";
printf("s:\t%s\n",s);
strcat(s,s1);
printf("s:\t%s\n",s);
strncat
将一个字符串中指定长度字符串追加到另一个字符串的尾部
char s1[128] = "hello";
char s2[] = "123546";
strncat(s1,s2,2);
printf("s1=%s\n",s1);
4:字符串比较
strcmp
//三个返回结果
// <0:s1<s1
// >0:s1>s2
// == 0:s1==s2
char s1[] = "a b c";
char s2[] = "a b d";
char s3[] = "a b d";
strcmp(s1,s2)==0?printf("相等\n"):printf("不相等\n");
strcmp(s3,s2)==0?printf("相等\n"):printf("不相等\n");