您的位置首页生活百科

C语言中strcpy函数用法。请教为什么运行后没有结果?

C语言中strcpy函数用法。请教为什么运行后没有结果?

char a[7] = "abcdefg"; char b[4] = "ABCD"; 数组访问越界了,注意:灶姿作为字符串,最后都有一个默认的串尾符'\0'所以:"abcdefg"其实包含了8个字符:a,b,c,d,e,f,g,'\0'"ABCD"其实包含了5个字符:A,B,C,D,'\隐如绝0'所以你用a[7]和b[4]来橡首存储"abcdefg"和"ABCD"就越界了这么改就OK了main() { char a[8] = "abcdefg"; char b[5] = "ABCD"; strcpy(a,b); printf("%s\n",strcpy(a,b)); }