【发布时间】:2016-08-17 05:03:59
【问题描述】:
我想构建一个 struct 并包含 int 和 char 变量。这是我的代码:
typedef struct {
uint16_t type;
uint16_t sn;
int data1;
int data2;
char crc[1024];
}packet_t;
然后我用一个方法来创建struct:
packet_t packetCreate(uint16_t type,uint16_t sn, uint16_t data1,
uint16_t data2, char crc[1024])
{
packet_t packet;
packet.type = type;
packet.sn = sn;
packet.data1 = data1;
packet.data2 = data2;
packet.crc = crcr;
return packet;
}
我也在代码中定义了相应的变量。但是当我编译代码时它不起作用并显示:
从行中的“char *”类型分配给“char[1024]”类型时不兼容的类型:packet.crc = crcr; 我应该如何定义和使用结构?我想构建一个包含 char 字符串的结构,这样我就可以存储数据的 CRC 字符串。
【问题讨论】:
-
该行应该是
packet.crc = crc;而不是packet.crc = crcr; -
注意:C 不支持方法。只有函数。