欢迎来到天天文库
浏览记录
ID:8970563
大小:29.00 KB
页数:2页
时间:2018-04-13
《c语言中处理字符串的各种自定义函数》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、C语言中处理字符串的各种自定义函数关于strcpy,strcmp,strcat,strlen的自定义函数,它是为了避免调用库函数对代码兼容的局限性。要注意如下一些问题:1.检查输入的两个指针是否有效;2.检查两个字符串是否以NULL结尾;3.检查目标指针的空间是否大于等于原字符串的空间。一.strcpy自定义char*sef_strcpy(char*str1,char*str2){If((NULL==str1)
2、
3、(NULL==str2)){printf(“invalidargument(s)”);return;}char*strcopy=str1;while(
4、‘ ’!=*str1++=*str2++);*str1=’ ’;returnstrcopy;}二.strcmp的自定义intsef_strcpy(char*str1,char*str2){If((NULL==str1)
5、
6、(NULL==str2)){printf(“输入参数错误,值为NULL!”);return-1;}while(*str1&&*str2&&(*str1++==*str2++));returnstr1-str2;}三.strcat的自定义char*sef_strcat(char*str1,char*str2){If((NULL==str1
7、)
8、
9、(NULL==str2)){printf(“输入参数错误!”);return;}char*strcopy=str1;while(‘ ’!=*str1){str++;}while(‘ ’!=(*str1++=*str2++));*str1=’ ’;returnstrcopy;}一.strlen的自定义函数intsef_strlen(char*str){if(NULL==str){printf(“输入参数错误,值为NULL!”);char*p=str;while(‘ ’!=*str++);returnstr-p-1;}注意点:对于指针变量P,其值可以任
10、意改变。在分配了一定内存空间后,假如P的值发生改变,此时再释放P的内存空间,将会使程序产生崩溃性错误。所以在P值为改变之前要先定义一个指针变量保存P的初值。
此文档下载收益归作者所有