Post by cxh_nuaa_2001
大家都知道在C/C++中数组是不能直接赋值的,要赋值必须一个一个的赋值。现在我想知道C/C++的实现者为什么要这么做?按理说数组也是一个内置的数据类型,能够直接赋值是顺利成章的事情,为什么要搞得不能赋值,而且还有数组名代表的是数组的地址为什么不能象结构(struct)的变量名一样代表的是它的内存块的内容呢?
Post by manphiz
在C/C++中,普通数组只是分配在连续地址上的一段相同类型的变量组成的,而不是一个变量。像a[n]并不是一个变量,而是通过指向第一个值的指针来操作的。数组和指针有着很密切的联系。可以认为数组操作是指针操作的另一种写法。因此像数组整体赋值这类操作是没有意义的,因为它们不是一个整体。