网站首页 > 博客文章 正文
本文为大家介绍,如何在VS Code上安装一个C/C++编译器,为VS Code 装上一双会飞的翅膀,废话不多说,我们开始准备起飞。
首先,安装好VS Code之后,需要给其安装一个C/C++扩展。在扩展库里搜索 “c++”。
由于VS Code只是个编辑器,下面就是安装C/C++编译器了,这里我们选择Mingw。它的全称是Minimalist GNU on Windows,它将开源gcc, g++编译器移植到Windows平台,并且包含了Win32 API,从而可以编译出能在Windows平台下运行的可执行程序。
Mingw是托管在SourceForge 上的,可以从SourceForge 中下载Windows Mingw-w64 installer,通过安装器安装。不过,在国内这个安装器好像被墙掉了,在安装的过程中会出现“cannot download repository.txt”的报错,有条件的可以使用VPN安装。
Windows Mingw-w64 installer下载地址:
https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/installer/mingw-w64-install.exe/download
这里我采用了离线安装的方法安装Mingw,不过下载速度会有些慢,请耐心等待。
离线包下载地址:
https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/8.1.0/threads-posix/sjlj/x86_64-8.1.0-release-posix-sjlj-rt_v6-rev0.7z/download
下载完成后,会得到一个压缩包(x86_64-8.1.0-release-posix-sjlj-rt_v6-rev0.7z),并将其解压。
配置系统环境变量,将bin目录添加到环境变量Path中。
环境变量配置完成后,我们可以打开命令行窗口查看g++/gdb版本。
g++ --version
gcc --version
gdb --version
安装配置成功后,我们就可以开心的写个hello world 庆祝一下了!
新建一个文件夹hello,使用VS Code把文件夹打开,在工作空间新建一个cpp文件helloworld.cpp,并添加代码。
下面该如何编译呢?在菜单栏选择 Terminal > Configure Default Build Task,将会出现一个下拉列表。
选择g++.exe build active file,在工作空间的.vscode目录将会创建一个task.json文件。
{
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "C/C++: g++.exe build active file",
"command": "C:\\mingw64\\bin\\g++.exe",
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
"options": {
"cwd": "${workspaceFolder}"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
回到hellowork.cpp文件,使用快捷键Ctrl+Shift+B,将会执行编译任务,在下方的Terminal也会有相应的信息打印。
再新建一个Terminal,执行编译生成的可执行文件helloworld.exe.
接下来我们再来看看,怎么去调试程序呢?我们切回到helloworld.cpp文件,设置好断点,按F5快捷键或者 Run > Start Debugging,就会进入调试模式,并会在.vscode目录下生成一个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": "g++.exe - 生成和调试活动文件",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "C:\\mingw64\\bin\\gdb.exe",
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "C/C++: g++.exe build active file"
}
]
}
同时,我们可以使用调试控制面板控制程序的执行流程。
那我们再多写几行程序,看看调试效果。我们可以看到当执行到数组array赋值语句后,左侧变量栏里的array值会有相应的变化,会显示为初始值。
利用调试控制面板,让程序进入循环,当执行完array重新赋值语句后,左侧变量栏里的array值也会相应的更新。
如果想要查看其它变量的值,可以在代码里右键,会弹出一个选项菜单,选择Add to Watch,在左侧Watch栏里将会列出这个变量和其值。
最后在看一下最终的目录结构。另外,还有更多的功能等待大家去发现,赶紧行动起来吧。
猜你喜欢
- 2024-12-23 Python 安装、Vscode IDE配置python开发环境
- 2024-12-23 Asp.net Core启动流程讲解(一)
- 2024-12-23 牛逼!竟然把VSCode玩成了IDEA的效果,有点哇塞
- 2024-12-23 WebCAD快速入门(在线CAD如何快速搭建和入门)网页浏览和编辑dwg
- 2024-12-23 vscode使用vs2022 msvc编译器
- 2024-12-23 分布式/微服务必配APM系统,SkyWalking让你不迷路
- 2024-12-23 我用VS Code 开发工具来开发 自己的 Flutter 应用 工具快而轻
- 2024-12-23 Flutter 实战经验(五):在 VS Code 里开发 Flutter 应用
- 2024-12-23 人生苦短,不光要用 Python,还要在 VSCode 里用 | 原力计划
- 2024-12-23 使用VSCode搭建简单的JAVA开发环境
你 发表评论:
欢迎- 367℃用AI Agent治理微服务的复杂性问题|QCon
- 358℃初次使用IntelliJ IDEA新建Maven项目
- 355℃手把手教程「JavaWeb」优雅的SpringMvc+Mybatis整合之路
- 351℃Maven技术方案最全手册(mavena)
- 348℃安利Touch Bar 专属应用,让闲置的Touch Bar活跃起来!
- 346℃InfoQ 2024 年趋势报告:架构篇(infoq+2024+年趋势报告:架构篇分析)
- 344℃IntelliJ IDEA 2018版本和2022版本创建 Maven 项目对比
- 342℃从头搭建 IntelliJ IDEA 环境(intellij idea建包)
- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)