在使用VSCode开发C/C++时,一般除了引入系统包含路径下的头文件,如stdio.h,还会引入自定义或是第三方头文件,比如:
在进行JNI开发时,需要引入jni.h,而此文件在JDK_HOME/include目录下,另外jni.h内引入的jni_md.h,则又在JDK_HOME/include/win32下
默认情况下若是没有进行配置,编辑器IntelliSense会进行错误提示,同时在执行文件是会报如下错误:
fatal error: xxx.h: No such file or directory
那么如何解决上述问题呢?
总共分两步:
1、解决IntelliSense错误提示
在c_cpp_properties.json中,configurations -> includePath节点中,添加路径
如:JAVA_HOME/include,若是需要进行递归扫描路径,则使用JAVA_HOME/include/**
2、解决执行任务时错误
在tasks.json中,tasks->args节点中,添加
"-I",
"JAVA_HOME/include"
若是有多个目录,则如上面重复添加多个即可
若是你还不知道c_cpp_properties.json及tasks.json文件有什么作用,请参考我之前写的Visual Studio Code配置C/C++开发环境