liv*_*hak 0 c gcc pointers gcc-warning
我有一个unsigned char指针,其中包含一个结构.现在我想要执行以下操作
unsigned char *buffer ;
//code to fill the buffer with the relavent information.
int len = ntohs((record_t*)buffer->len);
Run Code Online (Sandbox Code Playgroud)
其中record_t结构包含一个名为len的字段.我无法这样做并且收到错误.
error: request for member ‘len’ in something not a structure or union.
Run Code Online (Sandbox Code Playgroud)
我在这做错了什么?
在C你不能只是采取buffer->len,因为它被解析,好像最终的结果buffer->len被强制转换为record_t *.尝试
((record_t *)buffer)->len
Run Code Online (Sandbox Code Playgroud)