我知道我们不能将一个字符数组直接赋值给另一个字符数组,例如:
char array1[] = "Hello";
char array2[] = "Hi!";
array1 = array2;//does not compile
但是:
char array1[] = "Hello";
char *array2 = NULL;
array2 = array1; //compile
printf("%s", array2); //display Hello
这个有效。
请问有人能解释一下为什么吗?
谢谢!
[]
和=
等运算符(而不是需要进行数组到指针转换),那将会很好且统一。 - Joseph Mansfield