我正在寻找一段时间,却找不到任何提示。
我现在想知道:在C中处理静态函数声明的常用方法是什么?因为静态函数不能从定义函数的模块以外的任何其他模块访问。我不知道在哪里宣布它。
到目前为止,我的想法达到了以下可能性,我可以声明一个静态函数:
那里有什么建议吗?
答案 0 :(得分:6)
将静态函数的声明放在.c源文件中,在该文件中定义和使用它。没有其他模块可以使用它,因此没有其他模块需要包含声明,因此不需要将它放在头文件中。
答案 1 :(得分:0)
这完全取决于您的使用案例。
当我创建一个由多个.c文件使用的接口时,我将这些直接放入也具有typedef,structs的标头中....请记住static
函数是未使用的将不会包含在目标文件中。
如果你只在一个编译单元中使用它们,那么没有理由不把它放在那里。
答案 2 :(得分:0)
在C中,如果我使用的是静态函数,我宁愿没有单独的声明。我在使用之前定义了这些函数。这样,我发现代码更容易理解 - 一种从块方法构建的方法。 所以,显然没有标题可以知道它们。