【转载】【VSCode】Windows下VSCode编译调试c/c++
转载自:http://blog.csdn.net/c_duoduo/article/details/51615381
懒得自己配置或自己配置出现不明问题的朋友可以点这里:
【VSCode】Windows下VSCode便携式c/c++环境
http://blog.csdn.net/c_duoduo/article/details/52083494
下载解压即可食用。
————————– 以下是原文 ————————-
这篇文章为blackkitty记录在windows下使用vscode编译调试c/c++的详细过程
首先看效果
设置断点,变量监视,调用堆栈的查看:
条件断点的使用:
下面是配置过程:
总体流程:
- 下载安装vscode
- 安装cpptools插件
- 安装编译、调试环境
- 修改vscode调试配置文件
- 完了
下载安装vscode
https://code.visualstudio.com/Download
点击下载自己喜欢的相应版本,绿色版解压即可食用
安装cpptools插件
打开vscode,按ctrl+e打开快速命令框,输入以下命令后等待
ext install cpptools
vscode在短暂的联网查找后会列出插件列表,如图:
点击箭头所指处的按钮安装插件,安装过程可能会有些慢耐心等待
安装完成后vscode会提示你重启vscode,此时重启即可
安装编译、调试环境
目前windows下调试仅支持 Cygwin 和 MinGW。
这里使用的是MinGW.
下面是MinGW的安装配置过程:
http://mingw.org/
进入官网点击右侧 Download Installer下载安装器
打开安装器点击install准备安装:
选择一个安装目录,默认为C:\MinGW这里选择的是A:\MinGW
点击Continue开始安装,安装过程需联网,若安装时提示error则需FQ安装
安装过程很快,结束后Continue按钮恢复为可用状态,点击完成安装。
打开MinGW安装管理器进行进一步配置
注意这里gdb必选,否则无法调试
选中几个需要的项右键Make for Installation进行标记,其中gcc和g++为c和c++编译器
选择完全部想要安装的项后点击左上角Installation菜单下的Apply Changes应用修改,过程需联网,中间出现error可先继续,若最后失败则需FQ更新,建议FQ
然后配置系统环境变量path,这一步为必须
在 我的电脑 上右键 属性:
然后按照下面步骤做即可,注意最后新建的项要与之前MinGW安装位置相对应
修改vscode调试配置文件
再次打开vscode,注意配置系统环境变量path后重启一下vscode
注意vscode调试需要在打开的文件夹中进行
打开文件夹后,新建test.cpp进行输入代码测试:
如图示进入调试界面选择C++:
然后会在工作目录下的生成一个launch.json的启动配置文件:
使用下面代码替换该文件:
{"version": "0.2.0","configurations": [{"name": "C++ Launch (GDB)", // 配置名称,将会在启动配置的下拉菜单中显示 "type": "cppdbg", // 配置类型,这里只能为cppdbg "request": "launch", // 请求配置类型,可以为launch(启动)或attach(附加) "launchOptionType": "Local", // 调试器启动类型,这里只能为Local "targetArchitecture": "x86", // 生成目标架构,一般为x86或x64,可以为x86, arm, arm64, mips, x64, amd64, x86_64 "program": "${file}.exe", // 将要进行调试的程序的路径 "miDebuggerPath":"a:\\MinGW\\bin\\gdb.exe", // miDebugger的路径,注意这里要与MinGw的路径对应 "args": ["blackkitty", "1221", "# #"], // 程序调试时传递给程序的命令行参数,一般设为空即可 "stopAtEntry": false, // 设为true时程序将暂停在程序入口处,一般设置为false "cwd": "${workspaceRoot}", // 调试程序时的工作目录,一般为${workspaceRoot}即代码所在目录 "externalConsole": true, // 调试时是否显示控制台窗口,一般设置为true显示控制台 "preLaunchTask": "g++" // 调试会话开始前执行的任务,一般为编译程序,c++为g++, c为gcc } ] }
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
注意miDebuggerPath要与MinGw的路径对应
替换后保存,然后切换至test.cpp,按F5进行调试,此时会弹出一个信息框要求你配置任务运行程序,点击它~
在这里随便选一个:
然后用下面代码替换:
{"version": "0.1.0","command": "g++","args": ["-g","${file}","-o","${file}.exe"], // 编译命令参数 "problemMatcher": { "owner": "cpp", "fileLocation": ["relative", "${workspaceRoot}"], "pattern": { "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$", "file": 1, "line": 2, "column": 3, "severity": 4, "message": 5 } } }
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
保存一下,然后切换至test.cpp,再次按F5启动调试~
完了!
转载于:https://www.cnblogs.com/ChenDinghao/p/6422787.html
【转载】【VSCode】Windows下VSCode编译调试c/c++相关推荐
- 【VSCode】Windows下VSCode编译调试c/c++【更新】
版权声明:本文为博主原创文章,转载请注明出处. --------– 2017.06.10 更新--------- 便携版已更新,点此获取便携版 用于cpptools插件的配置文件更新 更新的launc ...
- windows下VSCode调试时找不到文件的一种原因
windows下VSCode调试时找不到文件的一种原因 使用gdb进行 debug调试时 报错:Unable to start debugging. Unexpected GDB output fro ...
- Windows下搭建PHP调试环境(phpstudy+VScode)
Windows下搭建PHP调试环境(phpstudy+VScode) 0x00 问题背景 0x01 配套环境 0x02 php Xdebug简介 官方介绍: Xdebug扩展启用 0x03 php.i ...
- Windows下vscode实现pretty-print
对于大多数编程选手来说,一款好用的IDE至关重要,无关好坏,只要用的顺手就是最好的.由于visual studio更适合大型项目,小的程序有点大材小用,且入门有些难度.所以我一直在使用vscode,惊 ...
- jsoncpp在linux和windows下的编译及使用详解
一:摘要 1. JSON是一种轻量级的数据传输格式,全称为:JavaScript Object Notation,官方网址: http://www.json.org/json-zh.html 3. J ...
- Windows下MinGW编译vim7.4
学习了一段时间Vim,感觉有些功能真的很方便.因学习原因,工作平台更换到一台老式Xp电脑上,重新安装了Vim7.4.官网默认版本不支持等宽字体和GDI++渲染,需要手工编译一个修改过的版本. 1.下载 ...
- openstack windows下远程debug调试(komodo)
2019独角兽企业重金招聘Python工程师标准>>> 感谢朋友支持本博客,欢迎共同探讨交流,由于能力和时间有限,错误之处在所难免,欢迎指正! 如有转载,请保留源作者博客信息. Be ...
- Boost在Linux和windows下的编译 32位 64位
一 简言 1. Boost库是一个可移植.提供源代码的C++库,作为标准库的后备,是C++标准化进程的开发引擎之一 2. Boost官网地址:http://www.boost.org/ 3. 本博客示 ...
- tinyxml在linux和windows下的编译及使用详解
一:摘要 1.XML全称EXtensible Markup Language,翻译为可扩展标记语言,XML文件通常就是一个文本文件,可以使用任何编码 2.TinyXML是一个开源的C++用来处理XML ...
最新文章
- Python:XPath与lxml类库
- 确定不收藏?机器学习必备的分类损失函数速查手册
- 陶陶摘苹果(升级版)(洛谷-P1478)
- 英语学习笔记2019-11-15
- 常用服务器安装和部署
- java swing 字体_Java Swing界面编程(4)---获取本地字体
- 中国通风外墙系统市场趋势报告、技术动态创新及市场预测
- 因代码不规范,码农枪击4名同事,一人情况危急
- 【硬件】推荐软件『软硬件的基准测试工具』
- 区块链 智能合约中获取不了时间戳 随机数怎么办
- 8个绝对不能错过的PPT免费素材网站
- 人人都可以参与开源!龙蜥社区最不容错过的开发者活动来了
- 百度云大文件高速下载方法、软件
- win下使用curl
- ESP8266+blinker测温湿度
- 谈小学计算机教学,浅谈小学计算机教学方法
- matlab屏保弹球,连续时间下的弹球建模
- python 重定向 ctf_CTF web题型解题技巧 第四课 web总结
- vue props命名为啥使用kebab-case (短横线隔开式) 来命名
- 功能室计算机室教学计划,计算机室教学计划
热门文章
- java页面弹出窗口输出语句_jsp %%程序段里的catch语句里怎么弹出提示框?
- java实验四云南大学_云南大学JAVA程序设计实验四
- cvpr2019 目标检测算法_CVPR2019 | 0327日更新12篇论文及代码汇总(多目标跟踪、3D目标检测、分割等)...
- html5指南针源码,《绝秘奉献》——最新超短线指南针!源码已放!(贴图 原码)...
- 每天一个linux命令(17):whereis 命令
- 【深夜思考】java百度云资源
- 【机器学习】通俗的k-近邻算法算法解析和应用
- 【操作系统】考研の处理机调度算法(看不懂你来打我~!)
- AttributeError: module ‘cv2‘ has no attribute ‘SIFT‘
- 【最小费用最大流】Going Home