VSCode安装、配置环境、编译运行C/C++新手详细教程

2020-09-14 1078点热度 0人点赞 2条评论

VSCode安装、配置环境、编译运行(C/C++新手详细教程)

相关问题请访问我的个人网站:破壳AI.
本文首发于破壳AI.

vscode

一、安装 MinGW-w64 编译器套件

本文提到的 MinGW-w64 **是一个著名项目为 **Windows 64位平台提供的一套编译器,它也受到了微软官方文档的推荐,相关文件托管在 SourceForge 的网站上

因为 Windows 下的 VScode 不直接具备对于 C 语言的编译调试功能,所以要下载集成 gcc 等工具的 MinGw 以提供扩展支持。

1, 下载 MinGW-w64

下载地址为:MinGW-w64 - for 32 and 64 bit Windowssourceforge.net

翻到下面,找到我们需要的编译器套件(其中x86_64代表64位,win32代表Windows平台,后缀为 seh)

至于 Linux 和 Mac,这里限于篇幅不可能详解,但它们安装编译器都可以直接利用命令行中的包管理器完成,可自行百度“Linux 安装gcc”、“Mac 安装clang”。

chrome_7063DsvIYT

下载下来是个几十MB的压缩文件,后缀名为".7z",需要支持该格式的压缩软件进行解压。

2, 解压 mingw64

下载之后将该文件夹解压到某个目录下,我放在了D盘

3, 配置用户环境变量

为使外部程序或用户(也就是你)能访问到编译器,需要把它所在的目录(我这里就是D:\Programs\mingw64\bin,可在下图中点击地址栏进行复制)添加到环境变量Path中。

  1. 在桌面找到【此电脑】->右键->属性->高级系统设置->选择【高级】选项->选择下面【环境变量】->【*** 的用户变量】

(之所以选它是防止你误改系统变量,损害系统)

  1. 点击下面的用户变量 Path,选择“编辑”,或者直接双击(不要去动下面的系统变量!)

  1. 在 Path 中新增 mingw-w64 的安装路径:盘符:你的安装路径\mingw64\bin;

  1. 环境变量配置好之后,最好重启电脑;然后快捷键 Win+R 打开”运行“命令框,输入“cmd”,启动“命令提示符”,在命令窗口中输入以下命令并回车
gcc --version

如果结果如图所示,你的编译器就安装成功了。

如果失败,请回头检查你添加的路径是否生效且与实际相符;或者请卸载你参考其他教程安装的老式 MinGW 编译器并清除其添加在 Path 中的路径。

二、安装 Visual Studio Code

软件我已经下载好了放在网盘里,你可以直接点击下载。若系统不兼容,可以去原地址选择适合的版本下载,只是速度比较慢。

  1. 安装的时候一定要注意,安装路径默认或者自定义都可以,但是最好记住该路径,以后配置文件会用到。

  1. "添加到Path"一定要勾选上,其他也建议选上,省的需要的时候再配置麻烦

三、插件配置

1, C/C++ 插件

打开 VScode,在左侧一栏,最下面一个是扩展,搜索 ”C/C++“,然后点击安装

接下来,要利用"C/C++"插件预定义好了的配置,稍作修改以满足我们的需要。按快捷键【Ctrl】+【Shift】+【P】,打开命令面板,输入关键词"C/C++",在弹出的诸命令中选择编辑配置 (UI)或者 Edit Configurations (UI),将弹出"C/C++"给我们的默认配置(JSON那个操作难度较大,有兴趣的可自行研究)。

image-20210829010831451

image-20210829010903322诸配置中最重要的是 编译器路径 **和 **IntelliSense 模式 这两项,两者在右侧都有下拉三角。如果前面你正确配置了环境变量,路径的待选项中就会包含几个正确的编译器路径,编写 C 程序请选择 gcc.exe,C++ 则选择 g++.exe;模式选择 gcc-x64

2, Code Runner

安装同上

3, 其他插件参考

四、.vscode文件配置

  1. 编译配置文件 - task.json
    {
    "version": "2.0.0",
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: gcc.exe 生成活动文件",  // 编译任务的名称,跟 launch.json最后的 preLaunchTask的值对应
            "command": "F:\\mingw64\\bin\\gcc.exe",  // 编译器的路径,须跟你自己的电脑相符
            "args": [  // 编译器执行时的参数,跟手动编译时输入的内容基本一致,主要是多了-g参数,以加入调试信息
                "-g",
                //"{file}",
                //"{fileDirname}\\linkbitree.c",
                "{fileDirname}\\*.c",
                "-o",
                "{fileDirname}\\{fileBasenameNoExtension}.exe"
            ],
            "options": {
                "cwd": "{fileDirname}"
                //"cwd": "F:\\ingw64\\bin"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": "build",
            "detail": "编译器: F:\\mingw64\\bin\\gcc.exe"
        }
    ]
    }
    
  2. 调试配置文件 - launch.json
    {
       // 使用 IntelliSense 了解相关属性。 
       // 悬停以查看现有属性的描述。
       // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
       "version": "0.2.0",
       "configurations": [
           {
               "name": "gcc.exe - 生成和调试活动文件",  // 该调试任务的名字,启动调试时会在待选列表中显示
               "type": "cppdbg",
               "request": "launch",
               "program": "${fileDirname}\\{fileBasenameNoExtension}.exe",
               "args": [],
               "stopAtEntry": false,  // 这一项控制是否在入口处暂停,默认false不暂停,改为true暂停
               "cwd": "{fileDirname}",
               "environment": [],
               "externalConsole": false,  // 这一项控制是否启动外部控制台(独立的黑框)运行程序,默认false表示在集成终端中运行
               "MIMode": "gdb",
               "miDebuggerPath": "F:\\mingw64\\bin\\gdb.exe",  // 调试器路径,必须与你自己的电脑相符
               "setupCommands": [
                   {
                       "description": "为 gdb 启用整齐打印",
                       "text": "-enable-pretty-printing",
                       "ignoreFailures": true
                   }
               ],
               "preLaunchTask": "C/C++: gcc.exe 生成活动文件"  // 调试前的预执行任务,这里的值是tasks.json文件中对应的编译任务,也就是调试前需要先编译
           }
       ]
    }
    

至此结束,可以写代码调试运行了

还有一些配置比较复杂些,目前也用不到,等熟悉该软件操作后需要的时候再折腾就行。我后续也会继续更新该教程,你可以订阅博客持续关注。

更多问题请访问我的个人网站:破壳AI.
大家一起学习交流!

订阅博客,及时获取文章更新邮件通知

close

订阅博客,及时获取文章更新邮件通知

古月弧

保持专注,持续进步。

文章评论

  • 成功了 感谢

    2020-09-15
  • 您需要 登录 之后才可以评论