【问题标题】:Understanding #define #ifdef and Macros in the Linux Kernel了解 Linux 内核中的 #define #ifdef 和宏
【发布时间】:2011-12-04 18:01:55
【问题描述】:

我刚刚开始审计 Linux 内核,我不禁注意到源代码中有大量的#defines 和#ifdefs。我似乎无法准确理解这些是如何使用的。我检查了网络,但我发现的描述似乎非常模糊。任何人都可以告诉我#defines之类的确切作用以及为什么使用它们吗?我现在只需要一个简短的解释。

此外,人们在我查看过的不同来源上经常谈论宏。我完全不知道他们在说什么,而且我在网上找到的任何描述都同样神秘。有人可以向我解释宏吗?它们是如何定义的以及为什么它们在 Linux 内核中被如此频繁地使用(显然据我所知)。

任何帮助将不胜感激。

【问题讨论】:

    标签: macros kernel c-preprocessor conditional-compilation ifdefine


    【解决方案1】:

    我进一步查看了我之前的问题,发现我需要查看 C 预处理器以获得答案。一位讲师提到预处理器扩展了宏,所以我跟进了它。这是其他对宏等含义感兴趣的人的链接。the c preprocessor 希望它可以帮助其他一些迷失的灵魂:)

    【讨论】:

      猜你喜欢
      • 2011-07-31
      • 1970-01-01
      • 2013-03-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多