最近迷上了vscode这款编译器,小巧美观,用起来也很顺手,最主要的是全平台,正好最近要上手做Linux C客户端,以前没接触过linux,先拿它先在WIN上练练手。

这几天在网上找了非常多的教程,win总是配不好环境。(linux和win一起开始配的,感觉linux环境比win好配多了,下一篇博文再把linux端的配置过程分享出来,这里先写win的)。

环境:

WIN10 64 专业版

vscode版本:1.24.1

launch.json版本:0.2.0

tasks.json版本:2.0.0

mingw-w64版本:8.1.0

过程:

一、 安装vscode

vscode官网下载安装包直接安装即可

二、 vscode内安装C/C++ 插件

vscode内按快捷组合键Ctrl+Shift+X(或如图第①步点击[拓展]按钮)打开拓展分页,在搜索栏输入" C ",查找到如图的第一个插件,安装并重新加载之。

三、 安装mingw-w64(具体安装与环境变量配置可以查看这里)

在mingw-w64官网下载64位的mingw-w64在线安装包(以在线包为例)或离线包(离线包直接解压出来就能用)

在线包:根据系统选择合适的安装包进行下载,选择在线安装器

下载完成后出现如下安装包

安装该包,在Setting 界面将Architecture选项改为x86_64,其他不变,选择合适的安装路径(默认或重新指定都可以,路径中不要有中文)

配置计算机环境变量如图(我的安装路径是D:\mingw64,因此环境变量这么加)

安装完成后打开控制台,分别输入   g++ --version   和 gcc --version  查看环境是否安装成功(是否有当前版本号)

四、重启电脑(这里看了其他很多博主的没有提到,我没有重启,后来vscode代码写出来跑了很多次提示没有找到g++命令,最后重启解决)

五、运行C++代码

打开vscode,选择或新建一个空文件夹目录打开作为项目目录,新建一个test.cpp文件,键入如下helloworld代码

#include

int main(int argc, char *args[])

{

int i, j;

printf("hello world!\n");

printf("argc:%d\nargv:\n", argc);

for (i = 0; i < argc; i++)

{

printf("%d:%s\n", i, args[i]);

}

getchar();

return 0;

}

按下F5,顶部或出现如下菜单,选择C++(GDB/LLDB)

系统自动在当前目录下创建.vscode文件夹,并在其中新建一个launch.json的模版文件如下:

{

// 使用 IntelliSense 了解相关属性。

// 悬停以查看现有属性的描述。

// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387

"version": "0.2.0",

"configurations": [

{

"name": "(gdb) Launch",

"type": "cppdbg",

"request": "launch",

"program": "enter program name, for example ${workspaceFolder}/a.exe",

"args": [],

"stopAtEntry": false,

"cwd": "${workspaceFolder}",

"environment": [],

"externalConsole": true,

"MIMode": "gdb",

"miDebuggerPath": "/path/to/gdb",

"setupCommands": [

{

"description": "Enable pretty-printing for gdb",

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

"ignoreFailures": true

}

]

}

]

}

将该模版修改为如下(可以直接复制,并修改有注释的一段)

{

"version": "0.2.0",

"configurations": [

{

"name": "(gdb) Launch",

"preLaunchTask": "build",

"type": "cppdbg",

"request": "launch",

"program": "${fileDirname}/${fileBasenameNoExtension}.exe",

"args": [],

"stopAtEntry": false,

"cwd": "${workspaceFolder}",

"environment": [],

"externalConsole": true,

"MIMode": "gdb",

"miDebuggerPath": "D:/mingw64/bin/gdb.exe", // 这里修改GDB路径为安装的mingw64的bin下的gdb.exe路径

"setupCommands": [

{

"description": "Enable pretty-printing for gdb",

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

"ignoreFailures": true

}

]

}]

}

vscode中按下组合键Shift+Ctrl+P,在唤出的任务栏中键入>task,下拉找到并点击 Tasks:Configure Task(任务:配置任务)项,并在接下来的返回项中选择使用模版创建tasks.json文件

系统会自动在.vscode文件夹下创建一个tasks.json文件,自动生成的代码如下

{

// See https://go.microsoft.com/fwlink/?LinkId=733558

// for the documentation about the tasks.json format

"version": "2.0.0",

"tasks": [

{

"label": "build",

"type": "shell",

"command": "msbuild",

"args": [

// Ask msbuild to generate full paths for file names.

"/property:GenerateFullPaths=true",

"/t:build"

],

"group": "build",

"presentation": {

// Reveal the output only if unrecognized errors occur.

"reveal": "silent"

},

// Use the standard MS compiler pattern to detect errors, warnings and infos

"problemMatcher": "$msCompile"

}

]

}

同理,将之修改为如下代码(可直接覆盖)

{

"version": "2.0.0",

"tasks": [

{

"label": "build",

"type": "shell",

"group": {

"kind": "build",

"isDefault": true

},

"presentation": {

"echo": true,

"reveal": "always",

"focus": false,

"panel": "shared"

},

"windows": {

"command": "g++",

"args": [

"-ggdb",

"\"${file}\"",

"--std=c++11",

"-o",

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

]

}

}

]

}

至此,环境配置完成,转到C++代码页,按下F5,根目录下出现.cpp文件同名的.exe文件,代码自动执行,完成。

六、运行C代码

仿照第五步,新建helloworld.c文件,键入或粘贴C语言的helloworld代码

#include

#include

int main() {

printf("hello world!\n");

system("pause");

return 0;

}

在.c页面内单击F5,稍候片刻出现同名.exe并自动执行,完成。

最后,感谢以下博主的博客进行参考

c++ vscode 自动注释_WIN下vscode调试C/C++,从零开始生成helloworld项目【2018年6月29日】...相关推荐

  1. c++ vscode 自动注释_VS2015自动添加注释

    记录下创建一个MVC5下的Models文件夹下的代码添加自动注释修改文件路径位置: 让VS自动生成类的头部注释,只需修改两个文集即可,一下两个路径下个有一个 Class.cs文件 C:Program ...

  2. eslint vscode 自动格式化_配置VSCode编辑器适配VUE3开发

    团队协作开发一般都有统一的编码规范,举个例子:A习惯一个tab占位2个空格,B习惯一个tab占位4个空格,如果不统一,提交到仓库的代码将变得难以阅读和维护. 幸运的是我们可以通过插件来规范化代码,只要 ...

  3. VS-code出现注释乱码以及VS调试过程中出现汉字乱码问题

    文章目录 VS + VS-code 1.前言 2.方法 VS + Notepad++ 方法 VS + VS-code 1.前言 Visual Studio Code(简称VS-code)是如今我们常用 ...

  4. eslint vscode 自动格式化_使用 VSCode 的必备三大神器,这才是开发 Vue 的真香解决方案...

    现在用 VSCode 开发 Vue.js 应用几乎已经是前端的标配了,但很多时候我们看到的代码混乱不堪,作为一个前端工程师,单引号双引号乱用,一段有分号一段没有分号,有的地方有逗号有的地方没有逗号,空 ...

  5. 截至 2005年11月29日 CSDN 单独任命制度下的5星用户名单

    30 个 Wingsun 孙春阳 playyuer 退休干部 卧鼠藏虫 pam TechnoFantasy (VB MVP)www.applevb.com jiangsheng 蒋晟.MSMVP200 ...

  6. 互联网线下活动一周整理 11月23日—29日

    本周虎嗅通过懒汉互联等公开渠道收集互联网线下活动共计26场.其中北京13场,上海1场,广深3场,成都3场.下周有几次重大活动,如在北京举办的创业家年会.黑马大赛年度总决赛,中国创新营销峰会,第五届中国 ...

  7. ​Mac下 VSCode快捷键 VSCode基本使用

    Vscode快捷键/图解 Mac版 ​Mac下 VSCode快捷键 VSCode基本使用 ​Mac下 VSCode快捷键 VSCode基本使用 Mac 快捷键指示: ⌘ :Command ⌥ :Opt ...

  8. VC++设置Release模式下允许调试代码

    2019独角兽企业重金招聘Python工程师标准>>> 在Release中允许代码调试,只需要关闭代码优化,设置调试信息输出就可以了.以VS2015为例,说明如何设置相关项目属性,其 ...

  9. 线控转向,自动驾驶的下一个标配?

    汽车转向系统是汽车上的重要构件,其性能的好坏直接决定了汽车操控性能的优劣,它随着新技术的出现不断推陈出新. 从最初的纯机械转向系统,历经机械式液压助力转向(Hydraulic Power Steeri ...

最新文章

  1. leetcode105 前序中序遍历序列构造二叉树
  2. C++vector相关学习,我的理解
  3. Python《使用lxml解析xpath--爬取konachan》
  4. Backup Exec 2012下载地址
  5. Kelvin’s Ship-Wave Pattern
  6. leetcode题库--112路径总和
  7. android:图片裁剪
  8. 截止失真放大电路_一起学模电:6、放大电路静态与动态分析方法
  9. 腾讯无限法则有几个服务器,腾讯《无限法则》亚服即将开测!PC配置需求公布,竟无官方中文!...
  10. 树模型(四):随机森林
  11. 安全研究 # Order Matters: Semantic-Aware Neural Networks for Binary Code Similarity Detection
  12. AUTOCAD——拉长
  13. <2021SC@SDUSC>博客(9)山东大学软件工程应用与实践Jpress代码分析(8)
  14. 计算机中信息的表示与存储教案,计算机基础教案2--1.2信息的表示与存储.doc
  15. pythonista检测内容自动点击_Pythonista中文教程:100行代码实现一款远程键盘
  16. 前端搭建名言生成器(内附源码)
  17. 转载:物联网平台概述
  18. 06-2017.07-中兴通讯认识实习《LTE复杂项目》
  19. 【一些实用的学习与资源网站,白(学)嫖(习)使人快乐】
  20. 账号密码连接远程阿里云mongodb服务,报错 AuthenticationFailed,code:18

热门文章

  1. PingingLab传世经典系列《CCNA完全配置宝典》-2.7 EIGRP基本配置
  2. 在Hyper-v中创建并安装虚拟机
  3. 冬季,拿什么来温暖你的心情
  4. python爬虫本科容易找工作吗_python爬虫基础学完了,我真的能找到一份工作吗?...
  5. mysql多实例安装启动_MySQL多实例安装启动
  6. python 添加图例_Python | 在图例标签中添加Sigma
  7. mysql gtid配置_mysql 5.7 GTID主从配置
  8. anaconda base环境_anaconda中安装packages:pip还是conda install?
  9. python调用菜单响应事件_Python处理菜单消息操作示例【基于win32ui模块】
  10. c语言哈夫曼压缩文本,哈夫曼文本压缩C语言实现.doc