将结构数组作为复合文字传递给函数

时间:2015-03-31 07:06:55

标签: c arrays struct compound-literals

我有一个数组声明,我已经用一些初始值初始化了数组的所有元素。

我现在想要动态创建阵列成员" /按需,而无需静态分配所有成员。

test_t test_array[10] = {0, 0, 0, 0, 0}; //Array initialized func((uint32)&((test_t []){1, 2, 3, 4, 5});//Pass address of array member (created on demand)

使用arm编译器进行编译,它不允许使用"不完整类型"错误。

复合文字的语法是错误的吗? 谢谢!

1 个答案:

答案 0 :(得分:0)

@HuStmpHrrr:抱歉,我无法发表评论,我的编辑没有正确出现。

struct成员都是位字段,我在第一篇文章中只提供了一个示例。

typedef struct 
{
uint32 a            : 32;
uint32 b            : 32;
uint32 c            : 16;
uint32 d            : 15;
uint32 e            : 1;
} test_t;