按下ctrl+shift + p打开命令,搜索下面关键字
c/c++ edit configration
修改下面includepath栏, 按上面的说明提示修改
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceFolder}/**"
],
如果找不到头文件路径,编辑器会有提示,有个小黄灯,点击小黄灯,根据提示会进入可视化的修改界面,这个比方法一还要直观,更容易一些。
上面2种方法都是增加的软件的相对路径,但是如果是
添加这2个路径就可以了。
D:\Keil_v5\ARM\ARMCC\include
D:\Keil_v5\ARM\ARMCC\include\rw
如果 是在json文件中添加 ,需要加双斜杠
"D:\\Keil_v5\\ARM\\ARMCC\\include",
"D:\\Keil_v5\\ARM\\ARMCC\\include\\rw",
更正:不需要加双\\,加了反而错了。
在windows下运行vscode,编辑linux下的程序,老是找不到头文件,解决如下:
把linux下的头文件保存到电脑的任意一个目录,路径不要太深,我就保存到E:/work/include/下,如下图:
然后在c_cpp_properties.json中包含路径里,添加E:/work/include/**路径就可以了,如下:
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${default}",
"${workspaceFolder}/**",
"E:/work/include/**"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"cStandard": "gnu11",
"cppStandard": "c++17",
"intelliSenseMode": "gcc-x64",
"compilerPath": ""
}
],
"version": 4
}
我的win10上安装的有wsl, 一开始我想着把wsl下的linux路径添加到vscode的包含路径里,但是,一直不成功,我怀疑是路径太深的问题。
"C:/Users/willow_MI/AppData/Local/Packages/CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc/LocalState/rootfs/usr/include/**"
再次更正,自动生成的包含路径,确实是双斜杠\\,难道单斜杠双斜杠都可以用?
"includePath": [
"D:\\Keil_v5\\ARM\\ARMCLANG\\include",
"D:\\Keil_v5\\ARM\\ARMCLANG\\include\\arm_linux",
"D:\\Keil_v5\\ARM\\ARMCLANG\\include\\arm_linux_compat",
]
试验证明,单斜杠双斜杠都可以用,如果是正斜杠,则是单斜杠,如果是反斜杠,则是双斜杠!