怎么把二维数组赋值给一维数组?

如题所述

用memset函数(包含头文件string.h就可以使用了)

比如:

int a[m][n];//

memset(a,0,sizeof(a));

就可以了。

扩展资料:

注意事项

二维数组事实上叫做数组的数组。a[i]是数组名,a[i][j]是数组a[i]的第j个值。数组名表示数组的首地址,所以a[i]是数组a[i]的首地址,不用&来取地址。scanf("%d",&a[i])是不对的。要给二维数组赋值要用两个循环:

for(int i=0;i<2;i++){

for(int j=0;j<3;j++)

{

scanf("%d",&a[i][j]);

}

}

或者,想把二维数组当一维数组看待:

int *p=&a[0][0];//获取二维数组首地址

for(int i=0;i<6;i++)

{

scnaf("%d",p);

p++;

}

温馨提示:答案为网友推荐,仅供参考
相似回答