warning: ‘struct rev’ declared inside parameter list will not be visible outside of this definition or declaration 54 | int parse_1_REGISTER(struct rev *parse_msg,char * message) | ^~~ sip.c: In function ‘parse_1_REGISTER’: sip.c:77:14: error: dereferencing pointer to incomplete type ‘struct rev’ 77 | parse_msg->server_id = strtok(NULL, "@");啥意思
时间: 2024-04-29 11:19:22 浏览: 200
这个错误提示是因为在函数参数列表中声明了一个结构体指针类型的参数 struct rev *parse_msg,但是编译器并没有找到这个结构体的定义。这通常是因为在当前文件中没有定义这个结构体,或者是因为这个结构体定义在其他文件中,但是当前文件没有包含其头文件。
在函数中的这行代码 parse_msg->server_id = strtok(NULL, "@"); 的意思是使用指针 parse_msg 所指向的结构体变量的 server_id 成员变量来存储 strtok 函数的返回值。但是,由于编译器无法确定结构体的大小和成员变量的偏移量,所以无法正确解析这行代码。
要解决这个问题,你需要在当前文件中或者在头文件中定义 struct rev 结构体,并确保在使用这个结构体之前进行了声明或者包含了其头文件。
阅读全文