puts()printf("%s",p)‘
gets()?//内存是否合法scanf("%s",p)
strlen
memset //memset(?params初始化对象,?初始化成什么字符,?多大)
strcpy //strcpy(目标,复制对象)strncpy?//拷贝的最大长度??strncpy(目标,复制对象,长度)
strcat?//strcat(一个字符串,需要拼接的另一个字符串)
strcmp //strcmp(需比较的一个字符串,另一个字符串)??一样则为0
int?main(){ char?*str?=?"Leoishandsome"; char?c?=?‘i‘; char?*p?=?NULL; p?=?strchr(str,?c); if?(p?==?NULL) printf("没有找到"); else puts(p); return?0; }
strchr //strchr(要被检索的字符串,?要搜索的字符)
strstr //strstr(要被检索的字符串,?要搜索的字符)strtok //做字符串分割,strtok(需要分割的字符串,需要分割的类型)
char?str[]?=?"hello,world,leo,heyheyhey";p?=?strtok(str,",");if?(p?!=?NULL){ printf("获取到第一个串p=%s\n",p); }//获取第二个串需要加个NULLp?=?strtok(NULL,",");printf("获取到第二个串p=%s\n",p);/*获取后面几个串都需要不断添加p?=?strtok)=(NULL,",");*///改进int?i=1;while(){ p?=?strtok(NULL,","); if?(p?!=?NULL) { printf("获取到第%d个字符串p?=?%s\n",i,p); } else{ printf("没有字符串"); break; } i++;}
strlwr //strlwr(目标字符串)
char?str[]?=?"Hello?World"; //windows环境下要定义成数组的形态,否则崩溃,Linux下是可以的?purts(strlwr(str));
strupr
#include?#include?#include?int?main(){ char?*str?=?"Leo是个大帅哥哎"; puts(str);?//puts()函数里面自带一个换行符‘\n‘,可自动换行 printf("%s\n",str);?//printf()则需要自己写一个‘\n‘ char?*pstr?//野指针,造成非法内存访问,会出现段错误,?cmd闪退 pstr?=?(char?*)malloc(128)?/*?1.申请了空间?2.一旦用了malloc,一定要注意内存泄漏问题?3.malloc可能会失败,要对返回值进行判断*/ if?(pstr?==?NULL){ printf("申请内存失败"); eixt(-1); } memset(pstr,?‘\0‘,?128)?//初始化,把每个元素都初始化为;\0‘ //memset(?params初始化对象,?初始化成什么字符,?多大)
? ? ? ? ? ? ? ?
原文:https://blog.51cto.com/u_15249901/2856291