赞
踩
本篇是学习B站 鹏哥学C语言 自己照视频写的学习笔记,请支持鹏哥https://www.bilibili.com/video/BV1UK411C7xi?p=1&vd_source=3a37b8d942720a3c1bea00242c7f2759 一键三连
Visual studio Code 简称 VS Code,是一款跨平台的、免费且开源的现代轻量级代码编辑器,支持几乎主流开发语言的语法高亮、智能代码补全、自定义快捷键、括号匹配和颜色区分、代码片段提示、代码对比等特性,也拥有对git的开箱即用的支持。同时,它还支持插件扩展,通过丰富的插件,用户能获得更多高效的功能。
一般有[稳定版Stable]和[体验版Insiders]两个版本,我们一般安装稳定版本!
VSCode 安装好之后,我们还是要知道,VSCode毕竟是一个高级的编辑器,只能用来写C/C++代码,不能直接编译代码。所以,如果我们要能使用VSCode搭建C/C++的编译和调试环境,还必须有编译器使用。为了方便,我们就使用 MinGW-w64,MinGW-w64 移植到windows平台的一个gcc编译器,使用起来也是非常方便的。下面我们就演示怎么下载和配置 MinGw-w64。(苹果电脑这步跳过)
在Windows电脑上,按win+s快捷键,或者直接在搜索框中搜:环境变量
新加一个环境变量值,我们前面已经将 mingw64 拷贝到了c:\mingw64 目录下了,在这个目录下有一个 bin 的文件夹,这个文件夹下是gcc等编译器的可执行文件,所以我们就将:c:\mingw64\bin 添加到path的环境变量中就行,点击确定就行。如下图所示:
验证一下:
在windows电脑上打开cmd窗口,输入:gcc–version或者wheregcc,要是能看到版本号,就说明MinGW-w64 的编译器套件已经配置好了。
3.安装C/C++插件
要在VSCode上编译代码,还得配置C/C++插件,再次在VSCode的插件中搜索:C/C++,点击安装.如下图所示:
重启VSCode!!!
在VSCode上写代码都是首先要打开文件夹的,这样也方便管理代码和编译器产生的可执行程序,和VSCode生成的配置文件等。
在写代码前,我们想清楚想把代码放在什么地方管理,比如:在C盘下,我创建一个code的文件夹,我希望以后我写的代码都管理在code目录下,然后每天写的代码我再使用一个文件夹管理,比如:test,如下圈:
继续下一步,勾选并信任!
创建c语言文件:
代码写好了,为了编译代码,还没玩,我们继续下一步.
鼠标点在,c的源文件内部,按 ctr1+shift+p 快捷键,在弹出的界面中选择:【C/C++:编辑配置(UI)】,然
后进入设置页面。
配置[编译器路径]为你安装的MinDW-w64目录下的gcc
要编译代码,我们接下来,在终端中:配置任务,如下图:
在弹出的页面中,选择【c/c++:gcc.exe生成活动文件】
这时就生成了一个tasks.json文件是专门用来执行代码的编译任务的.
这里简单看一下这个json文件
还有可以通过图下命令修改生成不同阶段的文件!
1 编译
完成了上述的步骤,我们就准备好了所有的准备,接下来就可以编译并生成可执行程序了具体操作如下:
a.鼠标点在要编译的C语言代码中
b.然后执行【终端】->【运行生成任务】
如果一切正常的话,我们能看到【终端】提示,就说明编译成功了
2 执行代码
按键盘的 ctr1+”快捷键,打开VSCode自带的终端,就可以运行代码了。这时输入:.可执行程序的名字,即可以执行代码,如下图
1.新建文件
如果你的代码还是单独的一个,c文件,在当前打开文件夹中就可以编写,那直接在当前打开的文件中新建.c源文件,编写代码,对当前的代码,直接执行【终端】->【运行生成任务】
2、然后,执行【终端】->【运行生成任务】
如果你要写的代码需要单独文件夹管理,那就再次打开新的文件夹来编写代码,编译和执行了。比如:新的代码需要放在test_12_15的文件夹中管理
1.新建文件夹test_12_15
2把以前的.vscode文件夹拷贝到test_12_15里头,用上面讲述的方法,直接执行【终端】->【运行生成任务】.就可以了!
假设我们有一个工程 multiple_files,下面有多个文件需要编译,如下图:
代码如下:
要对这样的工程编译那怎么做呢?
拷贝放在文件夹下:
在VSCode中的展示效果:
要能够编译一个文件中的多个文件,需要定制tasks.json文件的内容
编译多个源代码文件:
1.通过把“${file}"修改为"${workspaceFolder}\\*.c",可以构建当前工作区中的所有C文件.//表示修改C语言,
2.通过把"${file}"修改为"${workspaceFolder}\\*.cpp",可以构建当前工作区中的所有C++文件。//表示修改C++
**修改编译输出的文件名:**
1.通过把"${fileDirname}\\$(fileBasenameNoExtension},exe",修改为:"${workspaceFolder}\\myProgram.exe"。
可以把编译输出的文件名硬编码为myProgram.exe,而不是与C文件同名。参看演示效果1。
2.通过把"${fileDirname}\\${fileBasenameNoExtension}.exe",修改为:"${workspaceFolder}\\${workspaceRootFolderName}.exe",
可以把编译输出的文件名为:打开的工作区文件夹名字.exe。参看演示效果2。
演示效果1:
演示效果2:
按照上面的讲述的运行方式即可!!!
鼠标点在.cpp 的源文件内部,按 ctrl+shift+p 快捷键,在弹出的界面中选择:【C/C++:编辑配置(UI)】,然后进入设置页面。
找到配置名称,这里我们再添加一个C++的配置,点击【添加配置】
编译器路径,根据自己的mingw64的路径,g++.exe,我的环境如下所示:
点中.cpp的文件,菜单中在终端下:配置任务,如下图:
按照上面的方式运行即可!
前面讲解的都是如何去编译代码,当我们生成一个可支持程序的时候,如果遇到了运行时的问题,我们就要想办法调试代码,那VSCode如何调试代码呢?接下来听我细细道来~
其实在VSCode上调试关键也是依赖一个配置文件的叫:launch.ison,那我们看看怎么调试。
首先点击调试,创建launch.json文件
然后选择【C++(GDB/LLDB)】:
产生了launch.json文件,并默认打开了
点击launch.json文件的右下方的【添加配置】,选择【C/C++:(gdb)启动】
这是生成了默认的调试配置信息,需要自定一些信息默认信息如下!
{ // 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。 // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "name": "(gdb)启动", "type": "cppdbg", "request": "launch", "program": "${fileDirname}\\${fileBasenameNoExtension}.exe", //"输入程序名称,列如"*********** "args": [], "stopAtEntry": false, "cwd": "${fileDirname}", "environment": [], "externalConsole": false, "MIMode": "gdb", "miDebuggerPath": "C:\\mingw64\\bin\\gdb.exe",// 寻找编译器************ "setupCommands": [ { "description": "为gdb启用整齐打印", "text": "-enable-pretty-printing", "ignoreFailures": true }, { "description": "将反汇编风格设置为Intel", "text": "-gdb-set disassembly-flavor intel", "ignoreFailures": true } ] } ] }
当launch.json文件生成后,我们只要打断点开始调试就行。调试的快捷键和VS系列的IDE是一样的,如:
F9-打断点/取消断点
F5-启动调试
F11-逐语句调试
F10-逐过程调试
启动调试后,也是可以使用监视窗口查看变量等程序执行过程中的信息。
BUG调试遇到如下图:
在所在.vscode三个文件配置正常时;尝试以下方法:
1.赶紧把项目拷贝到没有中文路径的除了C盘以外的盘.
2.然后重新执行【终端】->【运行生成任务】
3.重新安装[c/c++]插件
附上.vscode三个配置文件代码,按道理只是粘贴复制就可以成功运行!
//c_cpp_properties.json配置文件 { "configurations": [ { "name": "Win32", "includePath": [ "${workspaceFolder}/**" ], "defines": [ "_DEBUG", "UNICODE", "_UNICODE" ], "windowsSdkVersion": "10.0.18362.0", "cStandard": "c17", "cppStandard": "c++17", "intelliSenseMode": "gcc-x64", "compilerPath": "C:/mingw64/bin/gcc.exe" } ], "version": 4 }
//tasks.json配置文件 { "version": "2.0.0", "tasks": [ { "type": "cppbuild", "label": "C/C++: gcc.exe 生成活动文件", "command": "C:/mingw64/bin/gcc.exe", "args": [ "-fdiagnostics-color=always", "-g", "${workspaceFolder}\\*.c", "-o", "${workspaceFolder}\\${workspaceRootFolderName}.exe" ], "options": { "cwd": "C:/mingw64/bin" }, "problemMatcher": [ "$gcc" ], "group": "build", "detail": "编译器: C:/mingw64/bin/gcc.exe" } ] }
//launch.json配置文件 { // 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。 // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "name": "(gdb)启动", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}\\${workspaceRootFolderName}.exe", //"输入程序名称,列如"*********** "args": [], "stopAtEntry": false, "cwd": "${fileDirname}", "environment": [], "externalConsole": false, "MIMode": "gdb", "miDebuggerPath": "C:\\mingw64\\bin\\gdb.exe",// 寻找编译器************ "setupCommands": [ { "description": "为gdb启用整齐打印", "text": "-enable-pretty-printing", "ignoreFailures": true }, { "description": "将反汇编风格设置为Intel", "text": "-gdb-set disassembly-flavor intel", "ignoreFailures": true } ] } ] }
【C语言】vs2019调试技巧:参照https://blog.csdn.net/m0_62782700/article/details/129007103
以上就是今天要讲的内容,本文仅仅简单介绍了vscode的使用,更多的调试方法
VS调试技巧:
https://www.bilibili.com/video/BV1oi4y1g7CF?p=28
https://www.bilibili.com/video/BV1oi4y1g7CF?p=29
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。