这里我用一个三个文件hello.c,hello.h,main.c(在同一个文件夹),直接编译运行main.c报错显示未定义sum函数
这里需要修改task.json文件,将args参数中的${file}
修改为${fileDirname}\\*.c
在配置完task.json文件后,还是显示“undefined reference”,排除后发现这个是插件C/C++ Compile Run的问题,应该是修改task.json文件args参数对这个插件无效吧。
所以这里我们使用自带的运行C/C++文件(不要用插件的编译运行)
结果是没有问题了
所以说,这里修改的task.json仅对自带的运行C/C++文件生效,每次运行都会编译链接当前文件夹下的所有.c文件(本例中相当于输入命令 gcc -g main.c hello.c -o main.exe),而插件C/C++ Compile Run仍是每次编译运行当前的.c文件(即gcc -g main.c -o main.exe),所以才会出现引用未定义的情况。