c - 为什么要使用 `extern void my_func();` 而不是包括 `my_utils.h` ?

标签 c extern

我正在处理一些我没有写的代码,并注意到有很多 extern void my_func();

我的理解是 extern in 用于全局变量,而不是用于函数。

是否有将函数声明为 extern 而不是将其放入头文件并包含它的实际原因?或者这只是一种风格选择?

最佳答案

仅当出于某种原因头文件未声明该函数时才需要这样做。并且 extern 对于函数来说总是不必要的,因为默认情况下函数总是 extern

关于c - 为什么要使用 `extern void my_func();` 而不是包括 `my_utils.h` ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3877402/

相关文章:

c++ - 您如何阅读 segfault 内核日志消息

c - C 中的段错误 calloc

c++ - 无法从另一个项目链接一个项目的头文件和 cpp 文件 LNK2019 : unresolved external symbol error

objective-c - 将 NSString* 数组声明为全局外部时 Xcode 中的错误和警告

c - GCC "artificial"函数属性的用例

objective-c - 计算两个边界之间的值的百分比的方法

c - 我应该为 C 函数中的错误返回什么?

c++ - 全局变量的默认存储类是什么?

c - 外部声明的数组和指针版本之间的差异