无效的初始化程序:将值从struct分配给struct数组时

时间:2018-10-31 04:22:49

标签: c arrays struct

假设我有两个结构。一个结构是具有一组元素的简单结构。

System.out.println(driver1.findElement(By.cssSelector("div#error.loginError")).getText());

其他结构只是前一个结构typedef struct __attribute__ ((packed)) { float a1; float a2; uint32_t b1; uint32_t b2; } item; 的数组。

item

我需要做的是从item_arr中获取一个元素,并将其分配给typedef struct __attribute__ ((packed)) { item item_queue[65000]; } item_arr; s数组。我正在尝试以这种方式实现。

item

在为profile_arr分配值之后,我从item_arr分配了一个元素到新的项目数组。

item_arr profile_arr[16] = {0};

但是这给了我错误:无效的初始化器

我是否以错误的方式进行初始化?任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

如果仅要将profile_arr[0].item_queue复制到temp_q,则可以使用memcpy

void * memcpy ( void * destination, const void * source, size_t num );

memcpy(temp_q, profile_arr[0].item_queue, sizeof(temp_q));