Windows Vscode C++17/20 配置教程

本文档详细介绍了如何在Windows上使用VSCode配置C++17环境,包括下载MSYS2,安装mingw64,配置gcc、gdb和make,以及在VSCode中设置插件、C/C++ IntelliSense和Debug。教程强调了结合B站视频进行配置,因为博客中的部分截图可能有误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Powered by:NEFU AB-IN

请一定结合B站视频和本博客进行配置!!博客中的部分截图是错误的(在视频中有所展现)

视频地址


p s : ps: ps:如果下到D盘,那么路径都和我一样,如果下到C盘,别忘了改路径!

Windows Vscode C++17/20 配置教程

起因

在博主打比赛时,对 m a p map map进行 a u t o auto auto的遍历操作,会导致编译警告,即 W a r n n i n g Warnning Warnning,显示只有 c + + 17 c++17 c++17可以用这个特性,但是可以编译,只是会用错误波浪线和编译警告

由于一开始不知道 g c c gcc gcc版本十分旧,一直用的是 c o d e b l o c k s codeblocks codeblocks里自带的 m i n g w 64 mingw64 mingw64,而且也不知道 m i n g w mingw mingw常年不更新版本,就冒然在 c o d e r u n n e r coderunner coderunner中修改了命令,将 c + + 11 c++11 c++11改成了 c + + 17 c++17 c++17

cd "d:\Code\Vscode\ACM\CF\2021.10.9\" ; if ($?) { g++ -std=c++17 a.cpp -o a } ; if ($?) { .\a }

结果:(由于博主已经配置完了,就拿 c o d e b l o c k s codeblocks codeblocks做个错误演示)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8ltJ0Yte-1633781781366)(C:\Users\liusy\AppData\Roaming\Typora\typora-user-images\image-20211009193659059.png)]

貌似就是 f s _ p a s h . h fs\_pash.h fs_pash.h有问题,搜了很久也没个说法

于是博主开始研究怎么升级 g c c gcc gcc版本,可以使用 c + + 17 c++17 c++17

  • 目前 g c c gcc gcc版本: 8.1.0 8.1.0 8.1.0
  • 在这里插入图片描述

下载MSYS2

  • 介绍MSYS2

    由于 MinGW 本身仅代表工具链,而在 Windows 下,由于Windows的terminal cmd窗口使用感受太差,以及配套的命令行工具不够齐全,因此,MinGW 开发者从曾经比较旧的 Cygwin 创建了一个分支,也用于提供类 Unix 环境。但与 Cygwin 的大而全不同,MSYS 是冲着小巧玲珑的目标去的,所以整套 MSYS 以及 MinGW,主要以基本的 Linux 工具为主,大小在 200M 左右,并且没有多少扩展能力。

    由于 MinGW 万年不更新,MSYS 更是,Cygwin的许多新功能 MSYS 没有同步过来,于是 Alex 等人建立了新一代的 MSYS 项目。仍然是 fork 了 Cygwin(较新版),但有个更优秀的包管理器 pacman,有活跃的开发者跟用户组,有大量预编译的软件包(虽然肯定没有Cygwin多)

    msys2是一款跨平台编译套件,它模拟linux编译环境,支持整合mingw32和mingw64,能很方便的在windows上对一些开源的linux工程进行编译运行。

  • 官网下载

    MSYS2

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Pu3yUK1x-1633781781372)(C:\Users\liusy\AppData\Roaming\Typora\typora-user-images\image-20211009192455303.png)]

    接着跟着教程走

    安装: msys2-x86_64-20210725.exe

    我的安装路径为 D:\msys64

  • 安装mingw64

    由于 m s y s 2 msys2 msys2是个工具链,我们还是要从这个编译套件中下载 m i n g w 64 mingw64 mingw64

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7HG9dqBS-1633781781377)(C:\Users\liusy\AppData\Roaming\Typora\typora-user-images\image-20211009194452711.png)]

  • 安装gcc gdb make

    查找 g c c gcc gcc,找到 w i n win win版本的 g c c gcc gcc

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FCwMPNGL-1633781781380)(C:\Users\liusy\AppData\Roaming\Typora\typora-user-images\image-20211009194731566.png)]

    根据自己的电脑的 O S OS OS选择版本,这里我选择 m i n g w − w 64 − x 86 _ 64 − g c c mingw-w64-x86\_64-gcc mingww64x86_64gcc

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KareIIVW-1633781781381)(C:\Users\liusy\AppData\Roaming\Typora\typora-user-images\image-20211009194853029.png)]

    可以看到安装需要的命令

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CBKZm1Jg-1633781781383)(C:\Users\liusy\AppData\Roaming\Typora\typora-user-images\image-20211009195103816.png)]

    如果安装完成,打开 m s y s 2 msys2 msys2,并进行更新(如果需要换源,可以百度自行搜索)

    pacman -Syu --disable-download-timeout
    

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fSzPIzB7-1633781781384)(C:\Users\liusy\AppData\Roaming\Typora\typora-user-images\image-20211009195201764.png)]

    之后去往安装的路径,可以看到 m s y s 2. e x e msys2.exe msys2.exe

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6aSX784l-1633781781385)(C:\Users\liusy\AppData\Roaming\Typora\typora-user-images\image-20211009195339471.png)]

    打开并继续进行更新

    pacman -Syu --disable-download-timeout
    

    之后进行 g c c , g d b , m a k e gcc,gdb,make gcc,gdb,make的安装

    pacman -S mingw-w64-x86_64-gcc  --disable-download-timeout
    pacman -S mingw-w64-x86_64-make  --disable-download-timeout
    pacman -S mingw-w64-x86_64-gdb  --disable-download-timeout
    

    最后,再进行一次更新

    pacman -Syu --disable-download-timeout
    
  • 设置环境变量

    之前大家应该都设置过,这里就不细说了

    直接将原有的路径替换为D:\msys64\mingw64\bin即可

Vscode配置

  • Vscode插件

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IusDsG4Q-1633781781387)(C:\Users\liusy\AppData\Roaming\Typora\typora-user-images\image-20211009195855186.png)]

    插件首先要配置好,这里推荐 c o d e r u n n e r coderunner coderunner,自定义命令

  • 配置cpp

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AFVAbLSS-1633781781389)(C:\Users\liusy\AppData\Roaming\Typora\typora-user-images\image-20211009200115528.png)]

  • 配置 coderunner

    打开 s e t t i n g s . j s o n settings.json settings.json,找到 c o d e r u n n e r coderunner coderunner的配置选项处

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jEboD2Z1-1633781781389)(C:\Users\liusy\AppData\Roaming\Typora\typora-user-images\image-20211009200237900.png)]

    "code-runner.executorMap": {
        "javascript": "node",
        "java": "cd $dir && javac $fileName && java $fileNameWithoutExt",
        "c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
        "cpp": "cd $dir && g++ -std=c++17 $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
        "objective-c": "cd $dir && gcc -framework Cocoa $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
        "php": "php",
        "python": "cd $dir && python -u $fileName"
    }
    
  • 配置 C/C++ IntelliSense

    为了不让波浪线的出现,要设置标准

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CRQp3Qxv-1633781781390)(C:\Users\liusy\AppData\Roaming\Typora\typora-user-images\image-20211009200428645.png)]
    . v s c o d e .vscode .vscode的文件夹中的,配置 c _ c p p _ p r o p e r t i e s . j s o n c\_cpp\_properties.json c_cpp_properties.json文件
    在这里插入图片描述

  • 配置 Debug

    修改本地文件夹下的 l a u n c h . j s o n launch.json launch.json t a s k . j s o n task.json task.json

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rltU99FL-1633781781390)(C:\Users\liusy\AppData\Roaming\Typora\typora-user-images\image-20211009200930260.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kjc8RA7j-1633781781391)(C:\Users\liusy\AppData\Roaming\Typora\typora-user-images\image-20211009200938234.png)]

大功告成

效果

版本 11.2.0 11.2.0 11.2.0
在这里插入图片描述

V s c Vsc Vsc编译界面
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xqCiD9Rh-1633781781392)(C:\Users\liusy\AppData\Roaming\Typora\typora-user-images\image-20211009201510630.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9tgtJvGF-1633781781392)(C:\Users\liusy\AppData\Roaming\Typora\typora-user-images\image-20211009201537573.png)]

评论 24
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

NEFU AB-IN

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值