【C语言】字符串处理自定义函数 |
您所在的位置:网站首页 › c语言自定义函数怎么定义 › 【C语言】字符串处理自定义函数 |
前言: 字符串是我们接触得比较频繁的一种数据类型,通常我们会调用头文件里的函数进行字符串处理的相关操作,那么我们能否自己写自定义函数来实现相应的功能呢?接下来我们就来介绍一些常见的字符串处理自定义函数,相信通过下面的学习大家一定会对字符串处理有更加深刻的理解! 常见的字符串处理: 1、字符串求长度 #include int Mystrlen1(const char *str) { int i=0; while(*(str++)!='\0') { i++; } return i; } int Mystrlen2(const char *str) { int i; for(i=0;*(str++)!='\0';i++); return i; } int main() { char a[100]; scanf("%s",a); printf("%d\n",Mystrlen1(a)); printf("%d\n",Mystrlen2(a)); }运行结果: 2、字符串拷贝(复制) #include void Mystrcpy1(char *des,char *src) { while(*src!='\0') { *(des++)=*(src++); } *des='\0'; } void Mystrcpy2(char *des,char *src) { int i; for(i=0;*src!='\0';i++) { *(des++)=*(src++); } *des='\0'; } void Mystrcpy3(char *des,char *src) { while( *(des++)=*(src++)); } int main() { char a[100]="abcd"; char b[100]="123"; Mystrcpy1(a,b); printf("%s\n",a); char c[100]="abcd"; char d[100]="123"; Mystrcpy2(c,d); printf("%s\n",c); char e[100]="abcd"; char f[100]="123"; Mystrcpy3(e,f); printf("%s\n",e); }运行结果: 3、字符串链接 #include void Mystrcat(char *des,const char *src) { while(*des!='\0') { des++; } while(*src!='\0') { *des++=*src++; } *des='\0'; } int main() { char a[100]="abcd"; char b[100]="123"; Mystrcat(a,b); printf("%s\n",a); }运行结果: 4、字符串比较 #include int Mystrcmp(const char *str1,const char *str2) { while(*str1==*str2 && *str1!='\0') { str1++; str2++; } if(*str1=='\0'&&*str2=='\0') { return 0; } else { return *str1-*str2; } } int main() { printf("%d\n",Mystrcmp("abc","ab")); printf("%d\n",Mystrcmp("ab","abc")); printf("%d\n",Mystrcmp("abc","abd")); printf("%d\n",Mystrcmp("ab","ab")); printf("%d\n",Mystrcmp("abad","abc")); }运行结果: 5、字符串逆序 #include void Reverse_str(char *str) { char *p; char tmp; for(p=str;*p!='\0';p++) ; p--; while(str123, "a123"->0,"123x4->123) #include #include int Myatoi(const char *str) { int sum = 0; while(isdigit(*str))//判断是否是数字 { sum = sum*10 + (*str-'0'); str++; } return sum; } int main() { char str1[]="123" ; char str2[]="a123" ; char str3[]="12x3" ; printf("%d\n",Myatoi(str1)); printf("%d\n",Myatoi(str2)); printf("%d\n",Myatoi(str3)); return 0; }运行结果: 7、数字转字符串 #include void Reverse_str(char *str) { char *p; char tmp; for(p=str;*p!='\0';p++) ; p--; while(str |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |