windows下vscode修复c++找不到头文件

因为原博客太长将部分内容分开

此问题可能会随着vscode的更新而得到解决以至于本文内容变得无意义

目前最新版本似乎已经不再需要了

vscode找不到头文件的问题是由于windows下vscode默认的编译器是微软的MSVC(vs使用的编译器)的头文件路径

如果你没有安装vs肯定会因为找不到头文件而报错

如果你安装了vs却同样报错

  1.你错误配置了vscode的配置文件

  2.你使用了在MSVC头文件库中并不存在的头文件比如bits/stdc++.h

修复这个问题有两个方法:

  1.修改配置文件

  2.将需要的头文件拷贝到vs的头文件路径中去

如果电脑没有安装vs而安装的mingw系列,只能通过修改配置文件来解决

修改配置文件的方法:

在.vscode文件夹下新建一个 c_cpp_properties.json 文件

 

将下面这段代码粘贴进去

其中,要将includePath选项更改为你mingw编译器的安装路径下的lib/gcc/x86_64-w64-mingw32/8.1.0/include文件夹路径

 

{
    "configurations": [
        {
            "name": "Win32",
            "includePath": [
                "C:/Program Files/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "_UNICODE"
            ],
            "intelliSenseMode": "gcc-x64"
        }
    ],
    "version": 4
}

对于非标准库中的头文件,也可以通过列表追加的方式将路径追加到includePath中去

比如

"includePath": [
                "C:/Program Files/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include",
          "path1",
          "path2",
          ...
],

 

修改头文件的方法:

首先你必须安装了微软vs系列中的一个比如visual stdio 2017 Community

 

然后找到安装路径下的头文件路径

默认的是:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include

 

然后将你需要的头文件粘贴进这个文件夹

这样能让MSVC和mingw拥有同样的头文件库

但你需要明白编译使用的是那个库是由编译器决定的,修改MSVC的库只是让vscode在默认情况下(没有c_cpp__properties.json文件)实时报错不显示错误和能够补全代码

实际编译是需要根据每个编译器的特性来进行操作的

 

vscode非常灵活,不像eclipse那样呆板臃肿,没有离不开的IDE,只要明白一个操作的大致原理,就可以凭我们想象去发挥了

posted @ 2018-12-20 10:37  tnnmigga  阅读(40213)  评论(0编辑  收藏  举报