List.h 定义了一个名为 list_entry 的宏,它是 container_of() 函数的包装器。一个优雅的函数,看起来很微妙:
考虑这段代码:
tmp = list_entry(pos,(struct Order),ord_Queue);
当我使用 gcc 编译它时,会弹出一个预期表达式的持续错误。
我的结构定义为:
struct Order
{
double idNum;
char* entryTime;
char* eventTime;
struct list_head ord_Queue;
};
当 Arg2 和 Arg3 中使用了多余的括号时,container_of 似乎存在问题,并且此处应该只为 Arg1 提供一个括号。我已经尝试过了,但它不起作用。
一些帮助将不胜感激。