如何配置vscode c语言环境

一、下载c语言编译器

下载地址:MinGW-w64 - for 32 and 64 bit Windows - Browse Files at SourceForge.net

下载完成后,自己选择合适路径,将其安装后复制其bin路径   

如:

 

 二、配置环境变量

 右键此电脑,选择属性,打开系统面板,选择左侧的高级系统设置,在弹出的系统属性对话框中选择环境变量,选择path,点击编辑,在编辑环境变量中点击新建,将复制的上文中的bin路径复制进去,一直点 确定 确定 确定!!!

 

 win + R 打开运行窗口 输入cmd在管理员窗口中输入 gcc -v -E -x c++ -

运行结果如下,配置成功。

三、在vscode中下载扩展配置

 在vscode的扩展中下载好如下配置

 

 四、修改文件

新建一个文件夹作为C语言项目文件,在文件夹中随便建一个文件(如hello.c,能正确运行就好)

在.vscode文件夹分别找到c_cpp_properties.jsonlaunch.jsontasks.json,三个文件。

1.在c_cpp_properties.json文件中将下列代码复制进去(原来的代码删除就好)

{
  "configurations": [
      {
          "name": "Win32",
          "includePath": [
              "${workspaceRoot}",
              "D:/vscodeCompile/mingw64/include/**",
              "D:/vscodeCompile/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++",
              "D:/vscodeCompile/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32",
              "D:/vscodeCompile/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward",
              "D:/vscodeCompile/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include",
              "D:/vscodeCompile/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed",
              "D:/vscodeCompile/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/include"
          ],
          "defines": [
              "_DEBUG",
              "UNICODE",
              "__GNUC__=6",
              "__cdecl=__attribute__((__cdecl__))"
          ],
          "intelliSenseMode": "msvc-x64",
          "browse": {
              "limitSymbolsToIncludedHeaders": true,
              "databaseFilename": "",
              "path": [
                  "${workspaceRoot}",
                  "D:/vscodeCompile/mingw64/include/**",
                  "D:/vscodeCompile/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++",
                  "D:/vscodeCompile/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32",
                  "D:/vscodeCompile/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward",
                  "D:/vscodeCompile/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include",
                  "D:/vscodeCompile/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed",
                  "D:/vscodeCompile/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/include"
              ]
          }
      }
  ],
  "version": 4
}

 

将红框中的复制为自己下载的编译器的路径 (7-13和27-33行)

2.在launch.json文件中将下列代码复制进去(原来的代码删除就好)

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "(Windows) Launch",
      "type": "cppvsdbg",
      "request": "launch",
      "program": "cmd",
      "preLaunchTask": "echo",
      "args": [
        "/C",
        "${fileDirname}\\${fileBasenameNoExtension}.exe",
        "&",
        "echo."
      ],
      "stopAtEntry": false,
      "cwd": "${workspaceFolder}",
      "environment": [],
      "console": "externalTerminal"
    },
    {
      "name": "(gdb) Launch",
      "type": "cppdbg",
      "request": "launch",
      "program": "${workspaceFolder}/${fileBasenameNoExtension}.exe",
      "args": [],
      "stopAtEntry": false,
      "cwd": "${workspaceFolder}",
      "environment": [],
      "console": "externalTerminal",
      "MIMode": "gdb",
      "miDebuggerPath": "D:\\vscodeCompile\\mingw64\\bin\\gdb.exe",
      "preLaunchTask": "echo"
    },
    {
      "name": "C/C++ Runner: Debug Session",
      "type": "cppdbg",
      "request": "launch",
      "args": [],
      "stopAtEntry": false,
      "externalConsole": true,
      "cwd": "d:/code",
      "program": "d:/code/build/Debug/outDebug",
      "MIMode": "gdb",
      "miDebuggerPath": "gdb",
      "setupCommands": [
        {
          "description": "Enable pretty-printing for gdb",
          "text": "-enable-pretty-printing",
          "ignoreFailures": true
        }
      ]
    }
  ]
}

 将文件里miDebuggerPath属性里的内容也要改成自己的路径。

 只修改红框当中的即可

3.在tasks.json文件中将下列代码复制进去(原来的代码删除就好)

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
        {//这个大括号里是‘构建’任务
            "label": "echo",//这个大括号里是‘构建’任务
            "type": "shell",//任务类型,process是vsc把预定义变量和转义解析后直接全部传给command;shell相当于先打开shell再输入命令,所以args还会经过shell再解析一遍
            "command": "gcc", //编译命令
            "args": [ //传给gcc命令的一系列参数
                "-g", //生成和调试有关的信息
                "${file}", //指定要编译的是当前文件
                "-o", //指定输出文件的路径和名称
                "${fileBasenameNoExtension}.exe",//让可执行文件输出到源码文件所在的文件夹下的bin文件夹内,并且让它的名字和源码文件相同
                "-fexec-charset=GBK"//解决中文乱码
            ]
        }
    ],
    "presentation": {//执行这个任务时的一些其他设定
        "echo": true,//表示在执行任务时在终端要有输出
        "reveal": "always",//执行任务时是否跳转到终端面板,可以为always,silent,never
        "focus": false,//设为true后可以使执行task时焦点聚集在终端,但对编译来说,设为true没有意义,因为运行的时候才涉及到输入
        "panel": "new", //每次执行这个task时都新建一个终端面板
        "showReuseMessage": true,//控制是否显示“终端将被任务重用, 按任意键关闭”提示.
        "clear": false
    }
}

五、运行程序

选择自己编写的程序 按F5 运行 成功即可

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


学习编程是顺着互联网的发展潮流,是一件好事。新手如何学习编程?其实不难,不过在学习编程之前你得先了解你的目的是什么?这个很重要,因为目的决定你的发展方向、决定你的发展速度。
IT行业是什么工作做什么?IT行业的工作有:产品策划类、页面设计类、前端与移动、开发与测试、营销推广类、数据运营类、运营维护类、游戏相关类等,根据不同的分类下面有细分了不同的岗位。
女生学Java好就业吗?女生适合学Java编程吗?目前有不少女生学习Java开发,但要结合自身的情况,先了解自己适不适合去学习Java,不要盲目的选择不适合自己的Java培训班进行学习。只要肯下功夫钻研,多看、多想、多练
Can’t connect to local MySQL server through socket \'/var/lib/mysql/mysql.sock问题 1.进入mysql路径
oracle基本命令 一、登录操作 1.管理员登录 # 管理员登录 sqlplus / as sysdba 2.普通用户登录
一、背景 因为项目中需要通北京网络,所以需要连vpn,但是服务器有时候会断掉,所以写个shell脚本每五分钟去判断是否连接,于是就有下面的shell脚本。
BETWEEN 操作符选取介于两个值之间的数据范围内的值。这些值可以是数值、文本或者日期。
假如你已经使用过苹果开发者中心上架app,你肯定知道在苹果开发者中心的web界面,无法直接提交ipa文件,而是需要使用第三方工具,将ipa文件上传到构建版本,开...
下面的 SQL 语句指定了两个别名,一个是 name 列的别名,一个是 country 列的别名。**提示:**如果列名称包含空格,要求使用双引号或方括号:
在使用H5混合开发的app打包后,需要将ipa文件上传到appstore进行发布,就需要去苹果开发者中心进行发布。​
+----+--------------+---------------------------+-------+---------+
数组的声明并不是声明一个个单独的变量,比如 number0、number1、...、number99,而是声明一个数组变量,比如 numbers,然后使用 nu...
第一步:到appuploader官网下载辅助工具和iCloud驱动,使用前面创建的AppID登录。
如需删除表中的列,请使用下面的语法(请注意,某些数据库系统不允许这种在数据库表中删除列的方式):
前不久在制作win11pe,制作了一版,1.26GB,太大了,不满意,想再裁剪下,发现这次dism mount正常,commit或discard巨慢,以前都很快...
赛门铁克各个版本概览:https://knowledge.broadcom.com/external/article?legacyId=tech163829
实测Python 3.6.6用pip 21.3.1,再高就报错了,Python 3.10.7用pip 22.3.1是可以的
Broadcom Corporation (博通公司,股票代号AVGO)是全球领先的有线和无线通信半导体公司。其产品实现向家庭、 办公室和移动环境以及在这些环境...
发现个问题,server2016上安装了c4d这些版本,低版本的正常显示窗格,但红色圈出的高版本c4d打开后不显示窗格,
TAT:https://cloud.tencent.com/document/product/1340