gpt4 book ai didi

c - 用户定义的 .c 和 .h 文件管理

转载 作者:太空宇宙 更新时间:2023-11-04 06:58:25 25 4
gpt4 key购买 nike

我正在构建一个包含我自己的 *.c 和 *.h 文件的小型库,但我不确定应该如何管理它们,尤其是在将它们包含到项目中时。我在 Ubuntu 上使用 Codeblocks 以防万一。对于每个 .c/.h 文件对,我都有一个 Codeblocks 项目,它是我可以修改和测试任何更改或新发现的错误的 Playground 。

我想我应该将 .c 编译成库 (.a/.so),将它们放入相应的自定义“XXX/bin”和“XXX/include”文件夹中,并从这些位置包含/链接(添加到路径)。

另一个选项(我一直在做的是对还是错)是将 .c 文件直接添加到我的项目中,并 #include .h 文件的完整路径(我知道这是错误的,但它有效).

你们都是如何管理 .c 和 .h 文件的?

最佳答案

实际上,这两种方式(编译程序时准备目标文件并使用它们的头文件,并以完整或相对路径为每个项目添加源代码和头文件)都是很正常的。您应该选择一种方便您的方式。我不知道 Codeblocks 是如何工作的,但我想作为大多数 IDE,它可以支持依赖关系、优化构建时间并在更新某些文件时重建库(复杂项目的组件)。

我的建议是考虑一些项目构建工具(project makers),比如 cmake。您将能够为任何项目配置构建过程并使用不同的编译器,以及为不同的项目使用不同的编译选项,而源文件(*.c 和 *.h)存储不变。

cmake tutorial开始及其他documentation

当然,一开始处理 makefile 语法并不容易,但是当你习惯了它时,你就会意识到它有多么方便。

关于c - 用户定义的 .c 和 .h 文件管理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41355980/

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