如果我有这两个数组:
char * A[] = {"One", "Two", "Three","Four"};
char B[][10] = {"Five", "Six", "Seven", "Eight"};
我尝试执行以下操作:
B[0] = A[0];
编译器会给我以下错误:从类型'char *'分配类型'char [10]'时出现不兼容的类型
但如果我做相反的事情:
A[0] = B[0];
没有错误。感谢您的帮助,谢谢。
答案 0 :(得分:-1)
数组和指针是不同的类型:数组的灵活性稍差,因为数组名称始终指向第一个元素,并且不能赋予新值。这就是为什么一个操作有效而另一个不是
的原因