在C语言中如何用把二维数组中的一行贼给一维数组?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在C语言中如何用把二维数组中的一行贼给一维数组?相关的知识,希望对你有一定的参考价值。

参考技术A 按列遍历,并输出到一维数组即可.

void covert(int a[M][N], b[M*N]) int i,j,n; for(i = n = 0; i < N; i++) for(j = 0; j < M; j ++) b[n++] = a[j][i];
参考技术B int i,j,a[3][4],b[12];
int n=0;
for(i=0;i<3;i++)
for(j=0;j<4;j++)

b[n++]=a[i][j];


或者用这个,memcpy(b , a[0],16); 后面的16表示4个整形,16个字节,但是我怕你搞错,还是走循环,嵌套赋值吧
参考技术C 一个一个复制
for ( int i = 0; i < 3; ++i )
b[i] = a[0][i];
//数组不支持直接拷贝。 不能整体赋值,这点不像结构体。

以上是关于在C语言中如何用把二维数组中的一行贼给一维数组?的主要内容,如果未能解决你的问题,请参考以下文章

如何用c语言给输入的二维数组每一行排序

C语言中如何用gets();语句来接收一个二维数组

C语言中如何用名字存数组,用时间函数模拟随机,实现随机输出一个姓名。

C语言中二维数组行指针是啥

C语言一维数组转二维数组

C语言中怎么把一维数组赋给另外一个一维数组