我想编译我的代码,但我不断收到此错误。无效的参数类型
error: invalid type argument of '->' (have 'struct packet')
零部件的初始化:
struct list *current;
struct packet p;
struct packet *newpacket = malloc(sizeof(p));
此行引起错误,但我不知道什么是错。
if ((current -> p -> block_num < newpacket -> block_num) && (current -> next -> p -> block_num > newpacket -> block_num)){
我的头文件:
struct packet {
unsigned short block_num;
unsigned short block_size;
unsigned short crc;
unsigned char *payload;
};
struct list {
struct packet p;
struct list *next;
};
我不明白什么是错的,我真正的新C.任何帮助,将不胜感激。谢谢!
list'的'的构件'p'不是指针,所以它应该是'电流 - > p.block_num'等... –