cl.exe #include"q.h"

2017-03-04 14:49:34 +08:00
 kuaiabcde

//file1:q.h int sum(int a, int b);

//file2:q.c int sum(int a, int b){ return a+b; }

//file3:qq.c #include"q.h" int main(){ sum(1,2); return 0; }

$ cl qq.c

qq.obj : error LNK2019: 无法解析的外部符号 _sum ,该符号在函数 _main 中被引用 qq.exe : fatal error LNK1120: 1 个无法解析的外部命令

这头文件到底怎么 include? 总不可能 include"q.c"吧

1738 次点击
所在节点    C
3 条回复
lzhCoooder
2017-03-04 15:20:42 +08:00
$cl q.c qq.c
bp0
2017-03-04 16:00:12 +08:00
单个 cl 就是编译,链接,生成可执行文件一气呵成。但是你只给了一个源文件,所以在链接阶段找不到 sum 函数。
atempcode
2017-03-04 16:33:53 +08:00
这个报错是 link 阶段报的错, include 头文件是发生在 compile 阶段。写个 makefile 吧。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/344877

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX