我有一个包含结构体的无符号字符指针。现在我想要做以下操作:
unsigned char buffer[24];
//code to fill the buffer with the relevant information.
int len = ntohs((record_t*)buffer->len);
record_t
结构包含一个名为len
的字段。我无法这样做,会出现错误。
error: request for member ‘len’ in something not a structure or union.
然后我尝试了:
int len = ntohs(((record_t*)buffer)->len);
为了使运算符优先级正确,我做了以下更改:
警告:对类型转换的指针进行解引用将违反严格别名规则。
然后我声明了:
record_t *rec = null;
rec = (record_t*)
我在这里做错了什么?
NULL
而不是null
。 - Chris Lutz