我在C语言编程,不知是否有可能一次性分配多个值的多维数组? 我已经尝试了一些技术,但都失败了! 我不感兴趣遍历数组赋值(我要禁食的方式来分配新值到阵列中的所有索引)。 我正在使用的阵列:ARY [4] [4]。
Answer 1:
由于阵列是不修改的左值,就不能出现在赋值的左侧。 你可以初始化它,你可以通过索引分配个人会员。
6.3.2.1
一个作案网络能够左值是不具有数组类型的左值,没有...
并且可修改的lvalue
:
名称“”左值“”从分配表达E1 = E2,其中左操作数E1需要是一个(MODI音响能)的左值来最初。
所以,不,你不能做你想做的。
Answer 2:
从另一个的memcpy将覆盖哪些是已经ary
。
int ary[4][4];
int another[4][4] = {{1,2,3,4}, {5,6,7,8}, {1,2,3,4}, {5,6,7,8}};
memcpy(ary, another, 4 * 4 * sizeof(int));
文章来源: How to assign multiple values at once to multi-dimensional array AFTER creating it - in C?