C语言字符串处理函数归总(比较全)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

字符串处理函数介绍bcmp原型:externintbcmp(constvoid*s1,constvoid*s2,intn);用法:#includestring.h功能:比较字符串s1和s2的前n个字节是否相等说明:如果s1=s2或n=0则返回零,否则返回非零值。bcmp不检查NULL。举例://bcmp.c#includesyslib.h#includestring.hmain(){char*s1=GoldenGlobalView;char*s2=Goldenglobalview;;clrscr();//clearscreenif(!bcmp(s1,s2,7))printf(s1equaltos2infirst7bytes);elseprintf(s1notequaltos2infirst7bytes);getchar();clrscr();if(!bcmp(s1,s2,12))printf(s1equaltos2infirst12bytes);elseprintf(s1notequaltos2infirst12bytes);getchar();return0;}相关函数:bcopy,bzerobcopy原型:externvoidbcopy(constvoid*src,void*dest,intn);用法:#includestring.h功能:将字符串src的前n个字节复制到dest中说明:bcopy不检查字符串中的空字节NULL,函数没有返回值。举例://bcopy.c#includesyslib.h#includestring.hmain(){char*s=GoldenGlobalView;chard[20];clrscr();//clearscreenbcopy(s,d,6);printf(s:%s\n,s);printf(d:%s\n,d);getchar();clrscr();s[13]=0;bcopy(s+7,d,11);//bcopyignorenullinstringprintf(%s\n,s+7);for(i=0;i11;i++)putchar(d[i]);getchar();return0;}相关函数:bcmp,bzerobzero原型:externvoidbzero(void*s,intn);用法:#includestring.h功能:置字节字符串s的前n个字节为零。说明:bzero无返回值。举例://bzero.c#includesyslib.h#includestring.hmain(){struct{inta;chars[5];floatf;}tt;chars[20];bzero(&tt,sizeof(tt));//structinitializationtozerobzero(s,20);clrscr();printf(InitailSuccess);getchar();return0;}相关函数:bcmp,bcopymemccpy原型:externvoid*memccpy(void*dest,void*src,unsignedcharch,unsignedintcount);用法:#includestring.h功能:由src所指内存区域复制不多于count个字节到dest所指内存区域,如果遇到字符ch则停止复制。说明:返回指向字符ch后的第一个字符的指针,如果src前n个字节中不存在ch则返回NULL。ch被复制。举例://memccpy.c#includesyslib.h#includestring.hmain(){char*s=GoldenGlobalView;chard[20],*p;clrscr();p=memccpy(d,s,'x',strlen(s));if(p){*p='\0';//MUSTDoThisprintf(Charfound:%s.\n,d);}elseprintf(Charnotfound.\n);getchar();return0;}相关函数:memcpy,strcpymemchr原型:externvoid*memchr(void*buf,charch,unsignedcount);用法:#includestring.h功能:从buf所指内存区域的前count个字节查找字符ch。说明:当第一次遇到字符ch时停止查找。如果成功,返回指向字符ch的指针;否则返回NULL。举例://memchr.c#includesyslib.h#includestring.hmain(){char*s=Hello,Programmers!;char*p;clrscr();p=memchr(s,'P',strlen(s));if(p)printf(%s,p);elseprintf(NotFound!);getchar();return0;}相关函数:memccpy,memmove,strcpymemcmp原型:externintmemcmp(void*buf1,void*buf2,unsignedintcount);用法:#includestring.h功能:比较内存区域buf1和buf2的前count个字节。说明:当buf1buf2时,返回值0当buf1=buf2时,返回值=0当buf1buf2时,返回值0举例://memcmp.c#includesyslib.h#includestring.hmain(){char*s1=Hello,Programmers!;char*s2=Hello,programmers!;intr;clrscr();r=memcmp(s1,s2,strlen(s1));if(!r)printf(s1ands2areidentical);elseif(r0)printf(s1lessthans2);elseprintf(s1greaterthans2);getchar();return0;}相关函数:memicmp,strcmpmemcpy原型:externvoid*memcpy(void*dest,void*src,unsignedintcount);用法:#includestring.h功能:由src所指内存区域复制count个字节到dest所指内存区域。说明:src和dest所指内存区域不能重叠,函数返回指向dest的指针。举例://memcpy.c#includesyslib.h#includestring.hmain(){char*s=GoldenGlobalView;chard[20];clrscr();memcpy(d,s,strlen(s));d[strlen(s)]=0;printf(%s,d);getchar();return0;}相关函数:memccpy,memmove,strcpymemicmp原型:externintmemicmp(void*buf1,void*buf2,unsignedintcount);用法:#includestring.h功能:比较内存区域buf1和buf2的前count个字节但不区分字母的大小写。说明:memicmp同memcmp的唯一区别是memicmp不区分大小写字母。当buf1buf2时,返回值0当buf1=buf2时,返回值=0当buf1buf2时,返回值0举例://memicmp.c#includesyslib.h#includestring.hmain(){char*s1=Hello,Programmers!;char*s2=Hello,programmers!;intr;clrscr();r=memicmp(s1,s2,strlen(s1));if(!r)printf(s1ands2areidentical);elseif(r0)printf(s1lessthans2);elseprintf(s1greaterthans2);getchar();return0;}相关函数:memcmp,stricmpmemmove原型:externvoid*memmove(void*dest,constvoid*src,unsignedintcount);用法:#includestring.h功能:由src所指内存区域复制count个字节到dest所指内存区域。说明:src和dest所指内存区域可以重叠,但复制后src内容会被更改。函数返回指向dest的指针。举例://memmove.c#includesyslib.h#includestring.hmain(){char*s=GoldenGlobalView;clrscr();memmove(s,s+7,strlen(s)-7);s[strlen(s)-7]=0;printf(%s,s);getchar();return0;}相关函数:memccpy,memcpy,strcpymemset原型:externvoid*memset(void*buffer,intc,intcount);用法:#includestring.h功能:把buffer所指内存区域的前count个字节设置成字符c。说明:返回指向buffer的指针。举例://memset.c#includesyslib.h#includestring.hmain(){char*s=GoldenGlobalView;clrscr();memset(s,'G',6);printf(%s,s);getchar();return0;}相关函数:bzero,setmem,strsetmovmem原型:externvoidmovmem(void*src,void*dest,unsignedintcount);用法:#includestring.h功能:由src所指内存区域复制count个字节到dest所指内存区域。说明:src和dest所指内存区域可以重叠,但复制后src内容会被更改。函数返回指向dest的指针。举例://movmem.c#includesyslib.h#includestring.hmain(){char*s=GoldenGlobalView;clrscr();movmem(s,s+7,strlen(s)-7);s[strlen(s)-7]=0;printf(%s,s);getchar();return0;}相关函数:memmovesetmem原型:externvoidsetmem(void*buf,unsignedintcount,charch);用法:#includestring.h功能:把buf所指内存区域前count个字节设置成字符ch。说明:返回指向buf的指针。举例://setmem.c#includesyslib.h#includestring.hmain(){char*s=GoldenGlobalView;clrscr();setmem(s,6,'G');printf(%s,s);getchar();return0;}相关函数:bzero,memset,strsetstpcpy原型:externchar*stpcpy(char*dest,char*src);用法:#includestring.h功能:把src所指由NULL结束的字符串复制到dest所指的数组中。说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。返回指向dest结尾处字符(NULL)的指针。举例://stpcpy.c#includesyslib.h#includestring.hmain(){char*s=GoldenGlobalView;chard[20];clrscr();stpcpy(d,s);printf(%s,d);getchar();return0;}相关函数:strcpystr

1 / 32
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功