ps:第一次用这玩意记录一下我还容易混淆的知识点,可能没那么精致哈,或者有些小错误(请指出嗷),见谅!咱就直接开始吧~
1.strlen函数
char str[]="01234";
printf("%d\n",strlen(str));
结果输出:5
1.strcpy函数
char str1[10],str2[10];
scanf("%s",str2);
strcpy(str1,str2):
B.
const char * orig="beast";
char copy[40]="Be the best that you can be.";
char *ps;
ps=strcpy(copy+7,orig);
puts(copy);
结果输出:Be the beast
2.strncpy函数
char str[40];
strncpy(str,"0123456789",5);
printf("%s\n",str);
结果输出:01234
1.strcmp函数
printf("%d\n",strcmp("apples","apple"));
printf("%d\n",strcmp("Z","a"));
结果输出:1 -1
2.strncmp函数
printf("%d\n",strncmp("abcd","abcDEF",3));
printf("%d\n",strncmp("abcd","abcDEF",5));
结果输出:0 1(大于0)
3.strnicmp函数
printf("%d\n",strcmp("A","a"));
printf("%d\n",strnicmp("A","a",1));
结果输出:-1(小于0) 0
1.strcat函数
char str[40]="wonderflower";
char str1[]="s smell like old shoes.";
strcat(str,str1);
puts(str);
结果输出:wonderflowers smell like old shoes.
2.strncat函数
char str[40]="wonderflower";
char str1[]="s smell like old shoes.";
strncat(str,str1,7);
puts(str);
结果输出:wonderflowers smell
1.sprintf函数
char str[40]="hello world!";
int year=2020;
char final[40];
sprintf(final, "%s %d\n",str,year);
puts(final);
结果输出:hello world!2020
1.strchr函数
char *strchr(const char * s, int c);
如果s字符串中包含c字符,该函数返回指向s字符串首次出现的c指针(末尾的空字符也是字符串的一部分,所以在查找范围内);如果在字符串s中未找到c字符,该函数返回空指针。
2.strpbrk函数
char *strpbrk(const char * s1, const char * s2);
如果s1字符中包含s2字符串中的任意字符,该函数返回指向s1字符串首位置的指针;如果在s1字符串中未找到任何s2字符串中的字符,则返回空字符。
3.strrchr函数
char *strrchr(const char * s, int c);
该函数返回s字符串中c字符的最后依次出现的位置(末尾的空字符也是字符串的一部分,所以在查找范围内)。如果未找到c字符,则返回空指针。
char str[100] = "hello worldfor2021";
char s = 'o';
char s1 = 'a';
char *n;
n = strrchr(str,s);
printf("%s\n",n); //输出or2021
n = strrchr(str,s1);
printf("%s",n); //输出(null)
4.strstr函数
char *strstr(const char *s1, const char * s2);
该函数返回指向s1字符串中s2字符串出现的首位置。如果在s1中没有找到s2,则返回空字符。
char str[100] = "hello worldfor2021";
char s[100] = "for20";
char s1[100] = "hey";
char *n;
n = strstr(str,s);
printf("%s\n",n); //输出for2021
n = strstr(str,s1);
printf("%s",n); //输出(null)
if(!n)
printf("1\n");
int num;
num = n - str;
printf("%d\n",num);