c语言两个数组拷贝问题

两个数组num1[10],num2[10];将第一个数组中的数传递到第二个中可不可以用
num2[]=num1[]; 当然我知道可以一个一个的赋值 for(i=0;num2[i]=num1[i];i++){;}
如果想让num2[]的首地址给num1[]有什么方法吗 谢谢
复制首地址之后可以用num1[i]调用吗 求解时

不可以 num2[]=num1[]

用MEMCPY

#include <iostream>
using namespace std;
int main()
{
int a[10];
int b[10]={0,1,2,3,4,5,6,7,8,9};
memcpy(a,b,10*sizeof(int));
int i;
for (i=0;i<10;i++)
cout<<a[i]<<endl;
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-11-05
将第一个数组中的数传递到第二个中可不可以用
num2[]=num1[]; 这样子是不行的,这个操作仅仅把num1[]的第一个数字赋值给了num2[]的第一个数
首地址的话,直接num1=num2;就可以了
首地址可以用num1[0]调用本回答被提问者采纳
第2个回答  2010-10-30
不可以,数组不可以直接复制。
第3个回答  2010-10-30
貌似不行吧,num1,num2都是地址,要改变数值,还是得一个个数据赋值.
拙见!
相似回答