VS Code 配置 C/C++ 开发环境( MSVC )
Posted C语言编程俱乐部
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VS Code 配置 C/C++ 开发环境( MSVC )相关的知识,希望对你有一定的参考价值。
0. 使用工具说明:
本文使用的 VSCode 是从官网下载的,有相应的 32 位和 64 位版本,支持 Win 7 和 Win 10。
本文使用的生成工具是从Visual C++ 2010 Express(学习版)(附 SP1 补丁包) 10.0 - AppZip上提供的 VC2010 中提取出来的 32 位 MSVC 工具链,在 Win 7 或 Win 10 的 64 位或 32 位系统都能成功使用。
1. 无需配置的绿色版本
下载链接:阿里云盘分享
解压后,运行里面的 VCVars.bat(只需要运行一次),它的作用是帮助您快速设置环境变量。
再运行 ShortCut.bat 它会在您的桌面上生成 VSCode 的快捷快捷方式。
打开运行 VSCode,如果 VSCode 依然是英文界面,那么需要重新启动 VSCode 一次,就能正确加载语言包插件。
在绿色版里配套了一个 Sample 的文件夹,用 VSCode 打开它,就能看到一个使用 EasyX 的例子。
创建新项目时,只需要把 Sample\\.vscode 文件夹移到您的项目于内容下,就可以避免重复配置。
绿色版压缩包内文件结构
├ VCompiler<folder>// VC 生成工具根目录
├ VSCode<folder>// VSCode 根目录
├ Sample<folder>//例子文件夹
│ ├.vsocde<folder>//保存配置的文件夹
│ │ ├ task.json
│ │ ├ launch.json
│ │ └ c_cpp_properties.json
│ └ main.cpp//源文件
├ ReadMe.txt//使用说明
├ VCVars.bat//设置环境变量
└ ShortCut.bat//生成桌面快捷方式
2. 手动配置
教程:百度网盘 请输入提取码 提取码:1234
文字教程:
前往 Visual Studio Code - Code Editing. Redefined 下载 VSCode,安装完成,点击运行。按住 Ctrl + Shift + X 键或者点击 VSCode 左侧第 5 个按钮 .
然后搜索 Chinese,安装简体中文插件进行汉化,喜欢英文原版可以跳过此步。这里认为你选择了中文插件。安装中文插件之后,搜索 C++,下载第一个 C/C++ 插件。
前往:百度网盘 请输入提取码 提取码:1234 下载所需的 VC 生成工具。
解压后(以解压在 D:\\App 下为例),进行设置环境变量。
新建 LIB 环境变量填入 D:\\App\\VCompiler\\lib
新建 INCLUDE 环境变量填入 D:\\App\\VCompiler\\include
在 PATH 变量中追加 D:\\App\\VCompiler\\Bin
新建一个文件夹(假设是 D:\\Project),用 VSCode 打开它,按住 Ctrl + Shift + P 键,输入 C++,会有一个下拉列表,选择 编辑 C++:编辑配置(UI)选项,
然后会出现一个 ” C/C++ Configurations “ 的配置页面,这个配置是用来配置 IntelliSense,它可以提供语法检查的功能,在语法错误的位置画红色波浪线。
配置名字可以任你填写。然后下滑到编译器选项,填入 D:\\App\\VCompiler\\Bin\\cl.exe。
IntelliSense 模式中选择 windows-msvc-x86 选项(因为提供的生成工具是 32 位的 vc2010 的生成工具)。
包含路径选项是加入您额外添加的头文件的路径,可以自行根据需要添加。
定义选项是给 IntelliSense 添加预定义宏。可以自行根据需要添加。(里面默认定义了 UNICODE 和 _UNICODE 是为了设置 Unicode(宽)字符集,删除后是多字节(窄)字符集,DEBUG 是设置调试宏,删除后是 Release 模式)。
下面的 C 和 C++ 标准,分别选择 C11 和 C++11 即可。
配置过后如下:
"configurations": [
"name": "Win32",
"includePath": [
"$workspaceFolder/**"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"cStandard": "c11",
"cppStandard": "c++11",
"intelliSenseMode": "windows-msvc-x86",
"compilerPath": "D:\\\\App\\\\VCompiler\\\\bin\\\\cl.exe"
],
"version": 4
设置完 C++ 配置后,可以新建一个 main.cpp 文件,简单写一个 helloworld 代码。
点击终端中的配置任务选项,这个是决定 VC 生成工具如何生成 exe。
接着会出现一个下拉列表,选择 C/C++ : cl.exe 生成活动文件。然后会自动进入 task.json 的编辑页面。C/C++ 插件已经默认配置完毕,但需要在里面的 args 选项中加入 /DUNICODE,/DUNICODE,/DEBUG。
这是为了让生成工具预定义使用宽字节字符集和调试模式下的宏,可以根据需要自行追加;
配置过后如下:
"version": "2.0.0",
"tasks": [
"type": "cppbuild",
"label": "C/C++: cl.exe 生成活动文件",
"command": "cl.exe",
"args": [
"/Zi",
"/EHsc",
"/nologo",
"/DUNICODE",
"/D_UNICODE",
"/DEBUG",
"/Fe$fileDirname\\\\$fileBasenameNoExtension.exe",
"$file"
],
"options":
"cwd": "$fileDirname"
,
"problemMatcher": [
"$msCompile"
],
"group": "build",
"detail": "编译器: cl.exe"
]
配置生成任务后,回到 main.cpp 页面,点击终端选项中的运行生成任务,选择提示已配置的任务。底下会出现一个终端框,里面会有生成结果的显示。出现”生成已成功完成“就表示生成成功,而 VSCode 的左侧文件目录会多出
几个文件,可以看到编译生成的可执行文件 main.exe。
有了编译还不够,还需要一个调试的配置。
选择 VSCode 上方运行选项中的添加配置,选择出现的下拉列表中的 C++(WIindows)。进入 launch.json 的编辑界面,点击右下方的添加配置按钮,将出现一个下拉选择列表,选择里面的 C/C++(windows) 启动。
VSCode 会自动添加相关配置,我们需要修改里面的 program 项,修改为"$fileDirname\\\\$fileBasenameNoExtension.exe",这样 VSCode 便能正确设置被调试文件。
配置好后如下文:
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
"name": "(Windows) 启动",
"type": "cppvsdbg",
"request": "launch",
"program": "$fileDirname\\\\$fileBasenameNoExtension.exe",
"args": [],
"stopAtEntry": false,
"cwd": "$fileDirname",
"environment": [],
"console": "externalTerminal"
]
配置完毕后,回到 main.cpp 页面,点击上方运行选项中的非调试模式运行(或者按下 Ctrl + F5),VSCode 会自动执行我们通过生成任务生成的 exe。
调试的方法是在下好断点后,点击上方运行选择中的启动调试(或者按下 F5),就会开始进入调试模式。左侧的文件目录框也会变成调试界面框。
这样调试和编译就完成了,在您的其他项目中,为了不必要的重复配置,可以把文件目录里的 如 C:\\Project\\.vscode 文件夹复制到您的项目文件夹里,这个 .vscode 文件夹保存的是您的配置文件。
类似这样的文件结构:
VSCode 项目文件结构
├.vscode<folder>//保存配置的文件夹
│ ├ task.json
│ ├ launch.json
│ └ c_cpp_properties.json
│
├ other.h//第三方头文件
├ other.cpp
│
└ main.cpp//源文件
3. 使用 EasyX
VC 生成工具里面已经加入了 Easyx 的头文件和库文件,但还需要在您的生成任务 (task.json) 配置中加入这些库:shell32.lib、gdi32.lib、user32.lib、ole32.lib
像下文这样:
"version": "2.0.0",
"tasks": [
"type": "cppbuild",
"label": "C/C++: cl.exe 生成活动文件",
"command": "cl.exe",
"args": [
"/Zi",
"/EHsc",
"/nologo",
"/DUNICODE",
"/D_UNICODE",
"/DEBUG",
"/Fe$fileDirname\\\\$fileBasenameNoExtension.exe",
"$file",
"user32.lib",
"ole32.lib",
"gdi32.lib",
"shell32.lib",
],
"options":
"cwd": "$fileDirname"
,
"problemMatcher": [
"$msCompile"
],
"group": "build",
"detail": "编译器: cl.exe"
]
4. 其他事项
如果需要多文件编译,假设这里您有一个 a.h 和 a.c,需要在 args 里面加入 a.c,调整后的大致如下所示:
"version": "2.0.0",
"tasks": [
"type": "cppbuild",
"label": "C/C++: cl.exe 生成活动文件",
"command": "cl.exe",
"args": [
"/Zi",
"/EHsc",
"/nologo",
"/DUNICODE",
"/D_UNICODE",
"/DEBUG",
"/Fe$fileDirname\\\\$fileBasenameNoExtension.exe",
"$file",
"a.c",
"user32.lib",
"ole32.lib",
"gdi32.lib",
"shell32.lib",
],
"options":
"cwd": "$fileDirname"
,
"problemMatcher": [
"$msCompile"
],
"group": "build",
"detail": "编译器: cl.exe"
]
在您的其他项目里若引用了第三方库,需要在 .vscode\\task.json 里 args 项加入相关库的引用。
args 项是 cl.exe 的命令行参数,想了解更多。可以前往Developer tools, technical documentation and coding examples | Microsoft Docs中查询相关用法。
——————————————
不管你是转行也好,初学也罢,进阶也可,如果你想学编程~
【值得关注】我的 编程学习交流俱乐部【点击进入】
以上是关于VS Code 配置 C/C++ 开发环境( MSVC )的主要内容,如果未能解决你的问题,请参考以下文章