不是说strcpy(char* dest, const char *src)函数参数
src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串
在VC下运行这两个为什么通过了啊?
char dest1[4]="aaa";
char src1[6]="bbbbb";
strcpy(dest1,src1);
cout<<dest1<<endl;
输出bbbbb
char dest2[4]="aaa";
char* src2="bbbbb";
strcpy(dest2,src2);
cout<<dest2<<endl;
输出bbbbb
//而这两个居然崩了
char* dest3="aaaaa";
char src3[4]="bbb";
strcpy(dest3,src3);
cout<<dest3<<endl;
char* dest4="aaaaa";
char* src4="bbb";
strcpy(dest4,src4);
cout<<dest4<<endl;
求指点!!! |