1. 前提条件

安装 VSCode 以及 MinGW

安装好 VSCode 中的 C/C++ 扩展

[图片上传失败...(image-e93c7c-1606314000230)]

PS: 我建议使用 chocolatey 安装,这样可以自动配置好环境变量

运行下列命令检查是否已经配置好环境变量:

gcc --version

gdb --version

2. 配置 VSCode

2.1. 创建工作文件夹

打开 Windows 的 Command Prompt,运行下列命令:(建立一个叫 project 的文件夹,里面将会放置你的程序文件,然后建立一个叫 helloworld 的子文件夹,进到子文件夹,打开 VSCode )

mkdir projects

cd projects

mkdir helloworld

cd helloworld

code .

最后的 code . 命令会在当前文件夹打开 VSCode ,当前文件夹随即变成当前的 workspace

2.2. 创建C语言的源代码文件

点击创建新文件,命名为 helloworld.c

image

在源代码文件内输入:

#include

int main() {

printf("Hello World!\n");

return 0;

}

保存源代码文件

2.3. 编译C语言的源代码

这一步我们需要创建一个 tasks.json 文件来告诉VSCode如何编译C语言的源代码。

在菜单中选择 Terminal > Configure Default Build Task 。随后会出现一个下拉菜单,里面会有 VSCode 预设的一些编译选项。我们这里选择 gcc.exe 这一项。

image

选中之后,VSCode 在当前工作文件夹下面的一个 .vscode 的文件夹中自动创建了一个 tasks.json 文件,文件内容看起来可能是这样的:

{

"version": "2.0.0",

"tasks": [

{

"type": "cppbuild",

"label": "C/C++: gcc.exe build active file",

"command": "C:\\ProgramData\\chocolatey\\bin\\gcc.exe",

"args": [

"-g",

"${file}",

"-o",

"${fileDirname}\\${fileBasenameNoExtension}.exe"

],

"options": {

"cwd": "C:\\ProgramData\\chocolatey\\bin"

},

"problemMatcher": [

"$gcc"

],

"group": {

"kind": "build",

"isDefault": true

},

"detail": "compiler: C:\\ProgramData\\chocolatey\\bin\\gcc.exe"

}

]

}

其中 commend 选项给出了具体执行编译任务的程序文件,在这里就是我们刚才选择的 gcc.exe 。args 选项给出的是运行编译任务时传递给 gcc 的参数。

创建好 tasks.json 之后,我们可以进行编译了。在菜单中选择 Terminal > Run Build Task

如果编译成功,你应该可以看到一个与源代码同名的 exe 可执行文件

2.4. 调试C语言的源代码

这一步我们需要创建一个 launch.json 文件来告诉 VSCode 如何编译 C 语言的源代码,即按下 F5 时启动 GDB 调试器。

在菜单中选择 Run > Add Configuration ,然后选择 C++ (GDB/LLDB) 。随后会出现一个下拉菜单,里面会有一些预设的调试配置。我们这里选择 gcc.exe 这一项。

VSCode 就会自动创建一个 launch.json 文件,同时编译并运行调试当前的 helloworld

launch.json 文件看起来可能是这样:

{

// Use IntelliSense to learn about possible attributes.

// Hover to view descriptions of existing attributes.

// For more information, visit: 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": true,

"cwd": "${workspaceFolder}",

"environment": [],

"externalConsole": false,

"MIMode": "gdb",

"miDebuggerPath": "C:\\ProgramData\\chocolatey\\bin\\gdb.exe",

"setupCommands": [

{

"description": "为 gdb 启用整齐打印",

"text": "-enable-pretty-printing",

"ignoreFailures": true

}

],

"preLaunchTask": "C/C++: gcc.exe build active file"

}

]

}

其中 program 指定要进行调试的程序。

默认情况下,源代码中不会自动设置断点,我们可以把 stopAtEntry 的值改成 true ,这样在调试的时候,即便没有添加任何断点,调试也会停止在 main 函数的入口。

注意:preLaunchTask 指定调试之前需要执行的任务,需要确保其与 task.json 中的 label 的值一致。

2.5. 其他配置

如果希望调控更多的参数,我们可以创建一个 c_cpp_properties.json 文件,其中可以修改编译器的路径、头文件 (include) 的路径以及编译器使用的标准(如c99)等参数。

可以在 Command Palette (Ctrl+Shift+P) 中运行 C/C++: Edit Configurations (UI) 来查看这些参数,如果对参数进行了修改,VSCode 会把这些修改写入 c_cpp_properties.json 文件中。

image

这里我们把 C 语言的标准改为 c11 ,也可以不修改。

参考链接

vs配置编译c语言,为 VSCode 配置 C 语言编译环境相关推荐

  1. 【C语言初级阶段学习1】使用vscode运行C语言,vscode配置环境超详细过程(包括安装vscode和MinGW-W64安装及后续配置使用的详细过程,vscode用户代码片段的使用)[考研专用]

    vscode配置c语言环境 前言 一.下载vscode和MinGW-W64和安装过程 1. vscode部分 1.1 vscode下载安装过程 1.2 vscode下载插件 2. MinGW-W64部 ...

  2. vscode 配置代码片段

    vscode 配置代码片段 文章目录 vscode 配置代码片段 1. 左下角设置(齿轮)选择 用户 代码片段 2. 中间可以选择特定语言的文件以便于更好在合适的语言环境下进行识别匹配 也可以进行选择 ...

  3. vscode配置Go支持

    目录 前言 一.goproxy的代理设置 1.安装go插件 2. 配置golang辅助工具 总结 附录 前言 由于vscode是开源免费的,而且开发支持vscode的插件相对比较容易,更新速度也很快. ...

  4. C语言编译php环境,vscode中C语言编译环境的配置方法(分享)

    本篇文章给大家介绍一下vscode配置C语言编译环境的方法.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助. vscode c语言的环境配置 完整教程请查看该教程:https://bl ...

  5. VScode配置C语言编译环境

    VScode配置C语言编译环境 前言 最近学校开了c语言课,使用vc6.0来编写c语言,但vc6.0太旧,没有代码补全和代码检查功能,所以我花了很长时间配置vscode的c开发环境,由于第一次配置,花 ...

  6. VScode配置C语言环境 亲测 可用!!!

    VScode配置C语言环境 亲测 可用!!! 一.首先下载vscode,地址:https://code.visualstudio.com/ 此时我已经安装好了 二.对VSCode进行汉化安装插件Chi ...

  7. Vscode c与c++编译环境配置(.vscode),看这一篇就够了

    目前下载编译器MinGW等操作网上已经有很多了,这里不需要过多介绍,先将本人所用的vscode编译器代码附上. tasks.json {// See https://go.microsoft.com/ ...

  8. vscode配置c语言环境

    1. 软件介绍 vscode 简介 vscode是一个免费的.开源的跨平台的编辑器,vscode平台下有许多插件,对于打代码起着很方便的作用,现在各类东西追求的功能并非是本身强大,而是可扩展方面的强大 ...

  9. mac下配置VSCode的C语言开发环境

    目录 1. 安装C语言扩展插件 2. 安装编译器 3. 运行个Hello World 3.1 创建个源文件 3.2 编译 3.3 执行 4. 嫌麻烦?一键运行的利器! 1. 安装C语言扩展插件 打开V ...

最新文章

  1. 联合国发布AI报告:自动化和AI对亚洲有巨大影响【附报告下载】
  2. Flutter之Dart入门
  3. SliverLight注册字典转换器方法
  4. 【计算机视觉】几个计算机视觉库
  5. 信息系统项目管理师:论项目的质量管理
  6. 发那科机器人控制柜示教器不通电_FANUC发那科工业机器人本地自动运行的设置方式...
  7. 〔译〕TypeScript 2.0 候选版发布
  8. 高级java必须清楚的概念:原子性、可见性、有序性
  9. 企业应用程序开发框架的分类
  10. gdb调试中出现optimized out
  11. java五大框架整理_五大Java常用框架整理!
  12. 第七章第二节 弹力学案
  13. Rimworld Mod教程 第六章:Defs文件
  14. select 多选下拉框获取值
  15. 鸟哥的linux私房菜-基础学习篇 读书笔记
  16. Java过滤字符串中的手机号+提取字符串中的手机号+验证是否存在手机号
  17. java怎么往list里存int,Java中List、Integer[]、int[] 的相互转换
  18. 嵌入式linux数控系统,关于ARM+DSP嵌入式Linux数控系统设计.pdf
  19. Android 4.4Phone的变化(二)
  20. director(director)

热门文章

  1. PyTorch 学习笔记(六):PyTorch hook 和关于 PyTorch backward 过程的理解 call
  2. LeetCode简单题之检查字符串是否为数组前缀
  3. LeetCode简单题之七进制数
  4. LeetCode简单题之棒球比赛
  5. 全文翻译(二): TVM: An Automated End-to-End Optimizing Compiler for Deep Learning
  6. Camera Lens Coating
  7. Pass算子python 函数
  8. FCN与U-Net语义分割算法
  9. 2021年大数据Hadoop(十四):HDFS的高可用机制
  10. android layout组件,Android UI学习 - Linear Layout, RelativeLayout