从类型'uint8_t'分配类型'typedef时不兼容的类型

时间:2013-11-10 20:16:43

标签: c struct typedef

我遇到了typedef的问题。

typedef char cool_array_t[ARRAY_SIZE];

cool_array_t* out;
// do stuff with out
cool_array_t test = *out;

我得到的错误如下:

  从类型分配类型'cool_array_t'时,

不兼容的类型   'char *'

我尝试转出cool_array_t,但它出现以下错误:

  

error:cast指定数组类型

1 个答案:

答案 0 :(得分:2)

您无法分配数组。您需要使用memcpy或换行struct

struct cool_array_t {
    char data[ARRAY_SIZE];
};

struct cool_array_t* out;
// do stuff with out
struct cool_array_t test = *out;