【问题标题】:Why is container_of not in glibc? [closed]为什么 container_of 不在 glibc 中? [关闭]
【发布时间】:2011-04-08 00:33:53
【问题描述】:

在 libc/glibc 中可能无法接受 container_of() 是否存在技术原因?

谢谢, 陈兹

【问题讨论】:

  • glib 或 C++ iostream 不包含在 glibc 中是否有技术原因?哦等等,后者是....
  • 链接到container_of的定义。

标签: c kernel glibc libc


【解决方案1】:

有无数的宏和函数不在 C 库中——它们中的任何一个都不存在并不一定是有原因的,而且 Linux 内核的 container_of 宏的实用性有限。但是,我认为没有任何 技术 原因导致它不能在 stdlib.h 中定义为

#define container_of(ptr, type, member) (type*)((char*)(ptr) - offsetof(type, member))

【讨论】:

    猜你喜欢
    • 2011-10-08
    • 2011-11-17
    • 2016-03-01
    • 1970-01-01
    • 2011-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-29
    相关资源
    最近更新 更多