我是编程新手,正在参加 cs50 在线类(class),该类(class)提供了一个带有 IDE 的在线容器,但为了离线完成问题集,我下载了库文件,但无法在我的代码中引用它们,库导入语句被声明为未使用,并且该库中的函数被标记为不存在,有人可以伸出援手吗? print from the issue
最佳答案
下载所有文件,我想它们是cs50.h和cs50.c。
将这两个文件放在主文件的同一目录中,并使用 cs50.h 的 include 语句,如下所示:
#include "cs50.h"
当我们使用不在标准库文件夹中的库时,我们必须将其包含在""
中而不是<>
罢工>
编者注
上述声明因具有误导性而受到批评。事实上,您可以使用 <>
包含您自己的 header ,前提是您将这些 header 所在的目录作为编译器的搜索路径之一传递。
假设您要编译 foo.c,它使用位于/where/bar/lives/include/目录中名为 bar.h 的头文件和/中名为 libbar.a 的库where/bar/lives/lib/目录,那么在大多数 C 编译器中你可以使用 -I
标志和 -L 标志可以将正确的位包含并链接到您的项目中:
要编译程序 foo.c,您需要:
cc -I/where/bar/lives/include -o foo.o -c foo.c
要链接,您需要:
cc -o foo foo.o -L/where/bar/lives/lib -lbar
这两个步骤将生成您的程序二进制文件 foo
有趣的是,您可以使用 -I.
和-L.
包括当前工作目录并使用 <>
随心所欲。
关于c - 如何导入 C 库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46633409/