1. 使用VSCode写C语言代码
1.1. 编写代码
打开文件夹并创建一个c文件,编写代码:
#include <stdio.h> int main(){ printf("haha\n"); return 0; }
1.2. 设置C/C++的编译环境
为了优化并清晰地描述在Visual Studio Code (VSCode) 中为C/C++源文件配置编译环境的步骤,特别是当鼠标位于.c源文件内部时,你可以按照以下步骤操作:
打开.c源文件:
确保你已经在VSCode中打开了你的C/C++项目,并且当前焦点位于你想要编译的.c源文件内部。使用快捷键打开命令面板:
将鼠标保持在.c源文件内,无需选择任何文本。然后,按下Ctrl+Shift+P
快捷键来打开VSCode的命令面板。选择配置命令:
在命令面板中,你会看到一个搜索框。在这个搜索框中输入C/C++: Edit Configurations (UI)
,或者【C/C++:编辑配置(UI)】,然后进入设置页面。然后从下拉列表中选择这个命令。这将打开C/C++扩展的配置页面。进入设置页面:
选择C/C++: Edit Configurations (UI)
命令后,VSCode会打开一个设置界面,允许你为你的C/C++项目配置编译器和调试器设置。这个界面通常包括多个选项卡,如“IntelliSense”、“编译器路径”、“调试器路径”等。配置编译器和调试器:
在设置界面中,你需要指定编译器的路径(例如gcc或g++的路径),以及任何必要的编译选项。如果你已经安装了MinGW-w64,并且它已经被正确地添加到了系统的PATH环境变量中,那么VSCode应该能够自动检测到gcc和g++的路径。如果没有自动检测到,你需要手动指定它们的路径。保存配置:
完成配置后,确保点击保存按钮或应用更改,以便VSCode能够保存你的配置并在后续编译和调试时使用它们。编译和调试:
现在,你可以使用VSCode的编译和调试功能来构建和运行你的C/C++项目了。通常,你可以通过点击界面上的编译或调试按钮来启动这些功能。
完成配置后,VSCode会在你打开的文件夹(工作区)下自动生成一个.vscode
文件夹。这个文件夹非常重要,因为它包含了VSCode用于该项目的各种配置文件,这些配置文件使得你的开发环境得以保存和复用。
在.vscode
文件夹中,你会看到一个名为c_cpp_properties.json
的文件。这个文件是C/C++扩展的核心配置文件之一,它包含了关于C/C++编译和IntelliSense(代码补全、错误检查等功能)的配置属性。
c_cpp_properties.json
文件通常包含以下几个主要部分:
configurations:这是一个数组,每个元素都是一个配置对象,定义了不同场景(如Debug、Release等)下的编译器和IntelliSense设置。
name:配置的名称,用于标识不同的配置场景。
includePath:编译器和IntelliSense应该搜索头文件的路径列表。
defines:预处理器宏定义列表,这些宏将在编译和IntelliSense过程中被定义。
compilerPath:编译器的完整路径,通常是gcc或g++的路径。
cStandard 和 cppStandard:分别指定C和C++语言的标准版本。
其他可能的配置选项,如
intelliSenseMode
(IntelliSense的工作模式)等。
version:配置文件的版本信息,通常是由VSCode或C/C++扩展自动管理的。
1.3. 配置任务
要编译代码,在终端中需要先配置任务:
在弹出的页面中,选择【C/C++:gcc.exe 生成活动文件】
这时就生成了一个tasks.json文件,这个文件是专门是用来执行代码的编译任务的。
1.4. 编译
完成了上述的步骤,我们就准备好了所有的准备,接下来就可以编译并生成可执行程序了。
具体操作如下:
鼠标点在要编译的C语言代码中
然后执行【终端】->【运行生成任务】
如果一切正常的话,我们能看到【终端】提示,就说明编译成功了。
这是我们在资源管理器中也能看到生成的.exe文件了。
1.5. 运行
1.6. 新建文件
新建的c文件,直接编译运行即可。不用再次配置了。
1.7. 新建文件夹
新建其他文件夹后,需要把当前项目中的.vscode文件夹拷贝到新文件夹下,否则还需要配置。
1.8. 编译多个源代码文件
在Visual Studio Code (VSCode) 中,为了编译一个项目中的多个源文件,你需要定制tasks.json
文件。这个文件定义了VSCode任务,这些任务可以执行编译、构建等自动化操作。
打开
tasks.json
文件:
在VSCode中,按
Ctrl+Shift+B
(或Cmd+Shift+B
在Mac上)来打开任务运行器,如果还没有配置任务,VSCode会提示你创建tasks.json
文件。你也可以通过命令面板(
Ctrl+Shift+P
或Cmd+Shift+P
)搜索并选择“Tasks: Configure Task”来创建或编辑tasks.json
。
修改
tasks.json
以编译多个文件:
在
tasks.json
中,找到或添加一个编译任务。修改
args
数组中的编译命令,将"${file}"
替换为"${workspaceFolder}\*.c"
以编译当前工作区中的所有C文件,或替换为"${workspaceFolder}\*.cpp"
以编译所有C++文件。注意:直接使用通配符(如
*.c
)可能不适用于所有编译器或构建系统。在某些情况下,你可能需要使用一个构建脚本(如Makefile)来管理多个文件的编译。VSCode支持通过任务调用外部构建脚本。
(可选)指定编译输出的文件名:
如果你想要将编译输出的文件名硬编码为特定的名称,比如
myProgram.exe
,你需要修改编译命令中的输出文件名部分。通常,这涉及到在编译命令中添加
-o
选项(对于gcc和g++等编译器)来指定输出文件名。在
tasks.json
中,你可以将输出文件名部分修改为类似"${workspaceFolder}\\myProgram.exe"
的形式。但是请注意,这里的路径和文件名应该与你的编译器和构建系统的要求相匹配。如果你想要使用工作区文件夹的名称作为输出文件名的一部分,你可以使用
${workspaceRootFolderName}
变量(但请注意,这个变量可能不是所有版本的VSCode都支持;在某些情况下,你可能需要使用${workspaceFolderBasename}
作为替代)。
2. 使用VSCode编写C++代码
2.1. 编写C++代码
#include <iostream> // 包含输入输出流库 int main() { std::cout << "Hello, World!" << std::endl; // 输出Hello, World!到控制台 return 0; // 返回0表示程序成功结束 }
2.2. 配置 g++.exe
为编译器
鼠标点在.cpp 的源文件内部,按ctrl+shift+p
快捷键,在弹出的界面中选择:【C/C++:编辑配置(UI)】,然后进入设置页面。找到配置名称,这里我们再添加一个C++的配置,点击【添加配置】。
输入:C++作为一个新配置的名,当然也可以用其他名,然后点击【确定】:
编译器路径,选择mingw64的路径下的g++.exe:
这时在c_cpp_properties.json
文件中就能看到一个名字叫:C++的配置:
2.3. 生成C++源文件编译的任务信息
点.cpp
的文件,选择终端下的配置任务:
这时,在tasks.json
文件中多了一个g++的编译配置信息:
2.4. 编译C++ 的代码
完成了上述的步骤,我们就准备好了所有的准备,接下来就可以编译并生成可执行程序了。
具体操作如下:
鼠标点在要编译的C++代码中
然后执行【终端】->【运行生成任务】
弹出下面的界面,再选择:【C/C++: g++.exe 生成活动文件】
出现下面结果就说明生成了可执行程序,可以运行了。
3. VSCode的调试
3.1. 创建launch.json文件
首先点击调试,创建launch.json文件:
生成并打开了launch.json文件,点击laucch.json文件的右下方的【添加配置】,选择【C/C++:(gdb)启动】:
生成了调试配置信息如下:
{ // 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。 // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "name": "(gdb) 启动", "type": "cppdbg", "request": "launch", "program": "输入程序名称,例如 ${workspaceFolder}/a.exe", "args": [], "stopAtEntry": false, "cwd": "${fileDirname}", "environment": [], "externalConsole": false, "MIMode": "gdb", "miDebuggerPath": "/path/to/gdb", "setupCommands": [ { "description": "为 gdb 启用整齐打印", "text": "-enable-pretty-printing", "ignoreFailures": true }, { "description": "将反汇编风格设置为 Intel", "text": "-gdb-set disassembly-flavor intel", "ignoreFailures": true } ] } ] }
还需要自定一些信息:
修改"program"为:"D:\\ccode\\cppcode\\demo.exe"。
修改"miDebuggerPath"为:"D:\\mingw64\\bin\\gdb.exe",这个路径根据自己实际放MinGW-w64的文件路径调整。
3.2. 开始调试
一旦launch.json
文件配置完成并生成,我们就可以直接在代码中设置断点并开始调试了。调试过程中,VSCode提供的快捷键与VS系列的IDE高度一致,便于用户快速上手。具体来说:
使用
F9
键可以在当前行设置或取消断点。按下
F5
键即可启动调试会话,程序将在设置的断点处暂停执行。F11
键用于逐语句调试,即逐行执行代码并观察程序的执行流程。F10
键则用于逐过程调试,它会跳过函数内部的详细执行,只关注函数调用的结果。
此外,在调试过程中,我们还可以利用VSCode提供的监视窗口来实时查看变量值、表达式结果以及程序执行过程中的其他关键信息,从而更加深入地了解程序的运行状态和潜在问题。
0条评论
点击登录参与评论