新手求教 关于数组间赋值的有关问题
新手求教 关于数组间赋值的问题
int t[3]={1,1,2};
int ab[3]=[0];
我想把 t这个数组 赋给 ab 为什么不能 ab=t 而非要 用for循环赋值 或者用memcpy 呢
既然 数组名 代表的 是 元素首地址 那 我用一个 数组1 =数组2 那这个数组1 不就应该和 数组2一样了???
新手 求解 为什么 C语言中 数组不能 如 ab=t 这样直接赋值 呢 求说明原理
谢谢了
------解决方案--------------------
你定义了一数组之后,数组的首地址是不能变得。也就是说在内存中的地址是不能改变了。
int a[10]
int b[10]
如果 a = b;
那么数组a的地址就变了。
规矩就是这样..只能for循环或者内存拷贝函数
int t[3]={1,1,2};
int ab[3]=[0];
我想把 t这个数组 赋给 ab 为什么不能 ab=t 而非要 用for循环赋值 或者用memcpy 呢
既然 数组名 代表的 是 元素首地址 那 我用一个 数组1 =数组2 那这个数组1 不就应该和 数组2一样了???
新手 求解 为什么 C语言中 数组不能 如 ab=t 这样直接赋值 呢 求说明原理
谢谢了
------解决方案--------------------
你定义了一数组之后,数组的首地址是不能变得。也就是说在内存中的地址是不能改变了。
int a[10]
int b[10]
如果 a = b;
那么数组a的地址就变了。
规矩就是这样..只能for循环或者内存拷贝函数