Visual Studio Code(VS Code)是基于 Electron 开发,支持 Windows、Linux 和 macOS 操作系统。内置了对JavaScript,TypeScript和Node.js的支持并且具有丰富的其它语言和扩展的支持,功能超级强大。

第一步:安装VsCode

首先需要到vscode官网下载vscode编辑器,并进行安装。

安装完成后,打开vscode进入如下页面,选择C/C++官方插件,点击install进行安装

第二步:编译器安装与配置

下面开始安装配置C/C++编译器

因为vscode只是一个代码编辑器,没有自带有C/C++的编译器,因此需要安装一个额外C/C++编译器,这里使用 MinGW-W64 GCC。因为网络问题mingw-w64很难下载,所以直接给出网盘下载地址。

下载地址:https://pan.baidu.com/s/1EhmVd97xFRtfy3V3sJzQlg

文件提取码:qghe

下载完成后将压缩包移动到C:\Program Files中进行解压,将mingw64中bin文件夹的路径复制下来

打开系统环境变量,在Path中新建系统环境变量并将复制好的路径添加进去,确定保存后完成配置

以上步骤完成后,验证一下时候系统环境是否配置成功

快捷键Win+R打开运行窗口,并输入cmd,回车打开命令提示符

在光标处输入以下代码,后显示如下图所示,即完成系统环境配置。如果这里出现问题,后面全部无法进行

  1. gcc -v -E -x c++ -

第三步:配置VsCode

1.先新建一个文件夹作为C项目文件,然后点击VsCode菜单栏中的File——>Open Folder,找到刚才新建的文件夹,然后点击选择文件夹打开这个项目文件。

在文件夹中新建一个C文件,并命名为Hello.c并输入以下代码。

  1. #include<stdio.h>
  2. int main(){
  3. printf("helloworld");
  4. return 0;
  5. }

在创建一个.vscode文件夹(注意vscode前面要加一个.),并新建以下三个文件

< c_cpp_properties.jsonlaunch.json、 tasks.json>

创建完成后将以下代码分别复制到对应文件中

1. c_cpp_properties.json

  1. "configurations": [
  2. {
  3. "name": "Win32",
  4. "includePath": [
  5. "${workspaceRoot}",
  6. "C:/Program Files/mingw64/include/**",
  7. "C:/Program Files/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++",
  8. "C:/Program Files/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32",
  9. "C:/Program Files/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward",
  10. "C:/Program Files/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include",
  11. "C:/Program Files/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed",
  12. "C:/Program Files/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/include"
  13. ],
  14. "defines": [
  15. "_DEBUG",
  16. "UNICODE",
  17. "__GNUC__=6",
  18. "__cdecl=__attribute__((__cdecl__))"
  19. ],
  20. "intelliSenseMode": "msvc-x64",
  21. "browse": {
  22. "limitSymbolsToIncludedHeaders": true,
  23. "databaseFilename": "",
  24. "path": [
  25. "${workspaceRoot}",
  26. "C:/Program Files/mingw64/include/**",
  27. "C:/Program Files/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++",
  28. "C:/Program Files/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32",
  29. "C:/Program Files/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward",
  30. "C:/Program Files/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include",
  31. "C:/Program Files/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed",
  32. "C:/Program Files/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/include"
  33. ]
  34. }
  35. }
  36. ],
  37. "version": 4
  38. }

以下两处需要根据真实环境中mingw64中bin文件夹的存放位置自行替换

No.1

No.2

2.launch.json

  1. "version": "0.2.0",
  2. "configurations": [
  3. {
  4. "name": "(Windows) Launch",
  5. "type": "cppvsdbg",
  6. "request": "launch",
  7. "program": "cmd",
  8. "preLaunchTask": "echo",
  9. "args": [
  10. "/C",
  11. "${fileDirname}\\${fileBasenameNoExtension}.exe",
  12. "&",
  13. "echo.",
  14. "&",
  15. "pause"
  16. ],
  17. "stopAtEntry": false,
  18. "cwd": "${workspaceFolder}",
  19. "environment": [],
  20. "externalConsole":true
  21. },
  22. {
  23. "name": "(gdb) Launch",
  24. "type": "cppdbg",
  25. "request": "launch",
  26. "program": "${workspaceFolder}/${fileBasenameNoExtension}.exe",
  27. "args": [],
  28. "stopAtEntry": false,
  29. "cwd": "${workspaceFolder}",
  30. "environment": [],
  31. // "externalConsole": true,
  32. "console":"externalTerminal",
  33. "MIMode": "gdb",
  34. "miDebuggerPath": "C:\\Program Files\\mingw64\\bin\\gdb.exe",
  35. "preLaunchTask": "echo",//这里和task.json的label相对应
  36. "setupCommands": [
  37. {
  38. "description": "Enable pretty-printing for gdb",
  39. "text": "-enable-pretty-printing",
  40. "ignoreFailures": true
  41. }
  42. ]
  43. }
  44. ]
  45. }

注:将miDebuggerPath属性里的内容也要改成自己的路径

3.tasks.json

  1. // See https://go.microsoft.com/fwlink/?LinkId=733558
  2. // for the documentation about the tasks.json format
  3. "version": "2.0.0",
  4. "tasks": [
  5. {
  6. "label": "echo",
  7. "type": "shell",
  8. "command": "gcc",
  9. "args": [
  10. "-g",
  11. "${file}",
  12. "-o",
  13. "${fileBasenameNoExtension}.exe",
  14. "-fexec-charset=GBK"//解决中文乱码
  15. ]
  16. }
  17. ],
  18. "presentation": {
  19. "echo": true,
  20. "reveal": "always",
  21. "focus": false,
  22. "panel": "shared",
  23. "showReuseMessage": true,
  24. "clear": false
  25. }
  26. }

以上所有步骤全部完成后,打开已经创建好的hello.c文件,按F5键或点击右上角三角形的执行按钮,执行程序,运行成功后会在console中显示以下内容:

F5:

执行按钮:

到此VsCode中配置C/C++开发环境全部结束

VsCode配置C/C++开发环境的更多相关文章

  1. Mac上利用VScode配置c/c++开发环境

    Mac上利用VScode配置c/c++开发环境 哭辽,Typora里面最好不要插入表情,不然保存会闪退 首先你要有一个vscode 在扩展里面下载c/c++ 第一步 ⬆+com+p 打开命令模式:选择 ...

  2. 50 ubuntu下pcl编译以及用 VSCode配置pcl / opencv开发环境

    0 引言 最近在VSCode下搞开发,于是将pcl库迁移到这个环境下,用来跑一些依赖pcl的开源的代码以及自己做一些快速开发等. 1 pcl编译 主要参考了这篇博客,链接如下. https://blo ...

  3. Mac OS中使用VScode配置C语言开发环境

    个人博客 chinazt.cc 闲话少叙,直奔主题 下载VSCode https://code.visualstudio.com/download 安装C/C++插件 需要两个插件: 1. cppto ...

  4. vscode配置java+gradle开发环境

    1.安装扩展包Java Extension Pack,里面包含java开发所必须的扩展 2.安装java jdk,8版本就是1.8版本,根据需要安装不同的版本 3.下载gradle,将bin文件夹添加 ...

  5. Ubuntu16.04下配置VScode的C/C++开发环境

    博客转载:https://blog.csdn.net/weixin_43374723/article/details/84064644 Visual studio code是微软发布的一个运行于 Ma ...

  6. VSCode 微信小程序 开发环境配置 详细教程

    本博客已暂停更新,需要请转新博客http://www.whbwiki.com/231.html 配置 VsCode 微信小程序开发环境并非不用官方的 微信小程序开发者工具 ,而是两者配合适用,可以极大 ...

  7. VS Code配置Go语言开发环境

    VS Code是微软开源的一款编辑器,插件系统十分的丰富.本文就介绍了如何使用VS Code搭建Go语言开发环境. VS Code配置Go语言开发环境 说在前面的话,Go语言是采用UTF8编码的,理论 ...

  8. VS Code配置Go语言开发环境(建议使用goland)

    VS Code是微软开源的一款编辑器,插件系统十分的丰富.本文就介绍了如何使用VS Code搭建Go语言开发环境. VS Code配置Go语言开发环境 说在前面的话,Go语言是采用UTF8编码的,理论 ...

  9. 解决 Ubuntu 18.10 使用较新的独立显卡输出无法初始化图形界面并配置深度学习开发环境

    原文地址:解决 Ubuntu 18.10 使用较新的独立显卡输出无法初始化图形界面并配置深度学习开发环境 0x00 配置 硬件 OS: Ubuntu 18.10 Base Board: ASUS WS ...

随机推荐

  1. centos 各版本下载

    地址: go to http://vault.centos.org/ for packages.

  2. TLS、SSL

    TLS/SSL 的功能实现主要依赖于三类基本算法:散列函数 Hash.对称加密和非对称加密,其利用非对称加密实现身份认证和密钥协商,对称加密算法采用协商的密钥对数据加密,基于散列函数验证信息的完整性. ...

  3. 业务层面和运维层面优化你的Redis

    业务层面 key的长度尽量要短,在数据量非常大时,过长的key名会占用更多的内存; 一定避免存储过大的数据(大value),过大的数据在分配内存和释放内存时耗时严重,会阻塞主线程; Redis 4.0 ...

  4. matplotlib 进阶之origin and extent in imshow

    目录 显示的extent Explicit extent and axes limits matplotlib教程学习笔记 import numpy as np import matplotlib.p ...

  5. Capstone CS5213|HDMI转VGA|CS5213设计参考电路

    Capstone CS5213是一款HDMI到VGA转换器结合了HDMI输入接口和模拟RGB DAC输出且带支持片上音频数模转换器.CS5213芯片设计简单,整体芯片尺寸精悍,外围电路集成优化度较高, ...

  6. vue为什么要设计成异步队列渲染

    异步队列渲染 上一篇文章是在vue2.0 中通过Object.defineProperty去拦截并监听数据变化的响应式原理,这篇文章将会沿着图谱继续深入探索,在依赖被通知变化了之后,会触发vue当中的 ...

  7. 啥是Gossip协议?

    你好呀,我是歪歪. 元旦的时候我看到一个特别离谱的谣言啊,具体是什么内容我就不说了,我怕脏了大家的眼睛. 但是,我看到一个群里传的那叫一个绘声绘色,大家讨论的风生水起的,仿佛大家就在现场似的. 这事吧 ...

  8. SpringBoot 之 实现登录功能及登录拦截器

    增加登录退出控制器: # src/main/java/com/wu/controller/LoginController.java @Controller public class LoginCont ...

  9. 使用 SSH 隧道实现端口转发、SOCKS 代理

    SSH隧道 本地端口转发 本地客户端通过 local_port 连接到 MobaXterm: MobaXterm 绕过防火墙,使用 user 用户连接到 ssh_server_ip:ssh_serve ...

  10. css 基础 选择器的使用

    1.标签选择器解释:是针对一个标签做的样式,它会将匹配的所有标签都发生改变语法格式:标签名{ css样式代码 }2.类选择器特点:1.可以给某一个标签标记为一类,设定css样式,比较灵活 2.类目可以 ...