gpt4 book ai didi

c - gcc 警告 : function used but not defined

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

我收到警告:函数已使用但未定义。我有 static
__inline__
在头文件中说 a.h。头文件包含在 a.c 中。我想将头文件中的所有内联函数放入 .c 文件中。以下代码给出了我的问题的想法。

原始代码:

嗯:

static __inline__ function1(){
function definition;
}

我改变了:
嗯:

static function1();

交流电:

#include "a.h"

static function1(){
function definition;
}

在执行上述操作时,我收到了警告:

   warning: function function1 is used but not defined. 

你能告诉我为什么我会收到这样的警告吗?我想将所有 __inline__ 函数转移到 .c 中,这样我就不会收到警告:

  warning: function1 is could not be inlined, code size may grow.

提前致谢

最佳答案

您已将函数声明为静态的。这意味着它仅在当前编译单元内可见。换句话说:实现仅在 a.c 文件中可见。您需要删除 a.ha.c 中的 static 关键字,以便其他 .c 文件可以看到该函数。您应该指定一个返回值,例如void function1(); 因为如果您没有指定,它隐式为 int

关于c - gcc 警告 : function used but not defined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5526461/

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