c - 非接口(interface)函数原型(prototype)应该放在哪里?

标签 c header-files function-prototypes

我反复读到,头文件应该包含其他文件使用源代码所需的所有声明。然后假设您有一个不被其他源文件直接使用的函数(换句话说,一个非接口(interface)函数)。它的原型(prototype)是否应该放在 .c 文件的顶部,因为它不会被其他文件使用?还是应该将它与所有其他函数放在头文件中,以便将 .c 文件中存在的函数完全总结在一个地方?

最佳答案

header 包含接口(interface)信息(外部世界使用“模块”中的功能所需的任何信息——例如 .c 文件)。所以内部函数(不从外部使用),不要进入标题

在 .c 文件中它取决于组织

  • 有些人喜欢在顶部列出所有内部函数声明,这样它们就在一个地方。
  • 其他人依赖于排序,因此一个函数是在它被使用的时候定义的(在另一个函数中);并且仅在必要时转发声明它(例如,相互调用的递归函数)

关于c - 非接口(interface)函数原型(prototype)应该放在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10095469/

相关文章:

c - POSIX 线程和公平性(信号量)

c++ - 在头类中创建内联函数到私有(private)变量

c++ - SSPI 头文件 - fatal error

javascript - 将参数传递给javascript中的原型(prototype)函数

c - 何时释放 C 中的指针以及如何知道它是否被释放

c - 仅循环外的段错误

c - 循环因条件终止,但条件是必要的?

c++ - 类模板的非模板嵌套类可以在 C++ 头文件中实现吗?

c++ - 函数原型(prototype)和函数实现签名不一致地使用 const 可以吗?

delphi - 我需要调用 RtlQueryProcessHeapInformation 的原型(prototype)