void mystrcpy(char *dst,const char * src)//当dst的内存长度不够时将会产生溢出 { if (dst==NULL||src==NULL) { exit(0); } while(*src!=‘\0‘) *dst++=*src++; *dst=‘\0‘; } int main() { char src[]="hello world"; char dst[]="zzzzzz"; strcpy(dst,src);//错误 发生越界 cout<<strcmp(src,dst)<<endl;//比较两个字符串大小 strncpy(dst,src,sizeof(dst)-1);//正确 cout<<dst<<endl; cout<<strcmp(src,dst)<<endl; }
原文:http://www.cnblogs.com/mu-tou-man/p/3948250.html