关于一个程序的疑问?
#include <stdio.h>
int main(int argc, char* argv[])
{
char str1[] = "Hello,world";
char str2[] = "";
int i = 0;
while(str1[i] != '\0')
{
str2[i]=str1[i];
i++;
}
printf("The str1 is %s.\n",str1);
printf("The str2 is %s.\n",str2);
return 0;
}
本意是把str1的内容拷贝到str2中,但是输出的结果是:
str1 变成 "o,worldorld"
str2 变成 "Hello,worldorld"
是什么原因哪?