VC中如何将一个二维数组的值赋给另一个二维数组?只能用一行。

其中一个是函数型式的
arrayB = change(m, arrayA);
这样好像不可以。。

//---------------------------------------------------------------------------

#include <stdio.h>
#include <string.h>
int main(void)
{
int a[2][2]={1,2,3,4},b[3][3]={0},i;

memcpy(b,a,sizeof(a));//把a数组的所有元素复制到b数组中

for (i = 0; i<9; i++) {
printf("%d ",b[i/3][i%3]);
if ((i+1)%3==0) putchar('\n');
}
return 0;
}
//---------------------------------------------------------------------------
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-03-26
什么意思,什么叫"其中一个是函数型式的"

只用一行的话,可以用memcpy函数实现,前提是两个数组各个维数下的元素个数是相同的本回答被提问者和网友采纳
第2个回答  2012-01-10
如果声明和定义变量那一行不算的话可以这样:
int a[2][3]={{1,2,3},{4,5,6}},b[2][3];
memcpy((char *)b,(char *)a,2*3*sizeof(int));
第3个回答  2012-01-10
把a赋给b
char a[5]={0};
char b[5];
memcpy(b,a,5);//b是目的地址,a是源地址,5是要拷贝的字节数
相似回答