我很好奇为什么这是一个错误以及错误消息的含义.这是一些代码:
int *x[] = {"foo", "bar", "baz"};
int *y[] = {"foo", "bar", "baz"};
x = y;
Run Code Online (Sandbox Code Playgroud)
我尝试编译,我得到这个:
error: incompatible types when assigning to type ‘char *[3]’ from type ‘char **’
Run Code Online (Sandbox Code Playgroud)
问题#1为什么这是一个错误?和问题#2为什么类型不同?
如上所述,存在很多问题.首先,数组文字是类型char*[],x而且y是类型int*[].其次,你不能直接分配数组,因为它们实际上是常量指针.