gpt4 book ai didi

c - “inline __attribute__((always_inline))” 在函数中是什么意思?

转载 作者:太空狗 更新时间:2023-10-29 16:45:38 27 4
gpt4 key购买 nike

我找到了以下函数定义:

static inline __attribute__((always_inline)) int fn(const char *s)
{
return (!s || (*s == '\0'));
}

我想知道 inline __attribute__((always_inline)) 的含义?

最佳答案

always_inline 的经常引用的 gcc 文档不完整。

always_inline 属性使 gcc 编译器:

  • 忽略 -fno-inline(这是文档所说的)。
  • 忽略内联限制,因此无论如何内联函数。它还使用 alloca 调用内联函数,inline 关键字永远不会这样做。
  • 如果标记为 always_inline,则不会生成具有外部链接的函数的外部定义。

以上信息的来源是 gcc 源代码,因此如有更改,恕不另行通知。

一个有趣的基准:always_inlineperformance .

关于c - “inline __attribute__((always_inline))” 在函数中是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22767523/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com