llgd.net
当前位置:首页 >> C语言复杂数据 编写实现下面字符串操作要求的函数... >>

C语言复杂数据 编写实现下面字符串操作要求的函数...

都是字符串操作,去看下字符串操作函数,就OK了!

#include int strcmp(char *s1, char *s2){for (; *s1 == *s2; s1++, s2++)if ('\0' == *s1)return 0;return *s1 - *s2;}int main(void){char *s1 = "her";char *s2 = "herb";printf("%d\n", strcmp(s1, s2));return 0;}

整体使用示例如下: 其中char * strcopy( char *strDest, const char *strSrc )即strcopy实现方法,并在main函数中进行了测试!

#includevoid mstrcpy(char *t,char *s) { while ( *s ) *t++=*s++; *t=0; }void main() { char str1[256],str2[256]; gets(str2); mstrcpy(str1,str2); printf("%s\n",str1);}

首先是使用库函数 比如下面代码 void ourStrCopy(char S1[] , char S2[]){ strcpy(S1, S2); //该函数还有另一个版本可以按长度截取 }还有一个函数是memcpy,这个是内存拷贝,原型是 void memcpy(void *dest, const void *src, size_t n);需要注...

#include "stdio.h" char *strcat(char *str1, char *str2) { if((str1==NULL)||(str2==NULL)) throw "Invalide arguments!"; char *pt = str1; while(*str1!='\0') str1++; while(*str2!='\0') *str1++ = *str2++; *str1 = '\0'; return pt; } ...

#include void string_copy(char *str_to,const char *str_from) { while(*str_to++=*str_from++); } int main() { char array_str1[80],array_str2[80]; gets(array_str1); string_copy(array_str2,array_str1); puts(array_str2); return 0; }

#include void main() { char s1[20],s2[10]; int i=0,j=0; gets (s1),gets (s2); while (s1[i] !='\0') { i++; } while (s2[j] != '\0') {s1[i++]=s2[j++];} puts (s1); }

思路:因为字符串都是以'\0'作为结束标志,所以可以从字符串的第一个位置开始遍历,直到出现'\0'停止遍历,并每次下标后移,字符串的长度加1,最后返回字符串长度。 参考代码: #include "stdio.h" int strlen(char *s){//求字符串长度函数 int ...

void invert (char str [] ) { int i,j, k; for(i=0,j=strlen(str)-1;i

网站首页 | 网站地图
All rights reserved Powered by www.llgd.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com