C头文件使用和代码重用

标签 c header-files code-reuse

一些用于常见任务的 C 代码可以在项目之间共享并保留以供将来使用。但我该如何保留它们呢?在 .c.h 中?我注意到 C 头文件 (.h) 通常只包含函数声明,而不包含定义,这似乎是推荐的做法。

  1. 声明定义放入mycode.h中,这样我就可以简单地#include "myheader"。 并将所有工作留给编译器。

  2. 声明放入mycode.h中,并将定义放入mycode.c中。大概符合约定吧?但我每次都必须编译并链接 mycode.c

最佳实践是什么?有什么建议么?

编辑:

每个人都说#2 是更好的做法。但是我如何告诉编译器定义/实现(.c/.o/.so?)位于头文件中的位置?因为我只是 #include 并使用 printf(...);?

最佳答案

创建一个库(.so 或 .dll - 你的毒药)然后链接到它

头文件将告诉编译器可用的内容

关于C头文件使用和代码重用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21231585/

相关文章:

c - Valgrind:在 C 中释放链接列表时,大小 8 的读取无效

c - 如果没有头文件,如何调用像 time() 这样的 C 函数?

c++ - Unresolved 符号错误

c++ - 在 Mac OS X 上安装第三方库?

c - C 中的字符串解析

objective-c - 应将各种变量和方法类型放在 header 中的位置

java - Android - 在具有不同 R 导入的不同项目中重用类?

dart - 错误chrome_views_delegate.cc(185)-未实现

c++ - 在具有运行时参数和编译时参数的类之间共享代码

仅使用按位转换 long 和 int