项目下载链接:https://sourceforge.net/projects/cjson/
项目主要文件:cJSON.c、cJSON.h、test.c
问题点:
- 有完整的头文件但编译时找不到,一直报 undefined reference to "xxx"。
报错原因:按单文件编译方法对多文件进行编译
该报错是 出现未定义引用"xxx"。是说我们类中的成员函数未定义。出现这种错误的原因是实现成员函数的c/cpp文件未被编译。
解决方法
1. 在设置中添加所有的编译源文件,能够在编译时自动链接。
2. 添加头文件位置,让编译器能够正确找的头文件。
1、在 tasks.jason 中设置源文件
vs code 是使用插件自动编译,一般运行后目录下会自动生成一个“.vscode”文件,编译文件是该文件下的“tasks.json”文件。
编译指令位在 "args"里。
原本的编译指令为 g++ -g ${file}.c -o ${fileDirname}\\${fileBasenameNoExtension}.exe
等于==> gcc test.c -o test.exe