1.VsCode下载和安装
1.1下载Microsoft vsCode
1.2安装vsCode
1.3下载中文插件
2.MinGW编译器下载和配置
2.1下载MinGW
- 在线安装——下载MinGW-W64-install.exe(速度慢)
- 下载压缩包——×86_64-posix-sjlj(速度快)
2.2下载解压并复制bin目录的路径
- 我的bin目录是E:\vscodeConfiguration\mingw64\bin
2.3 在系统环境变量配置path变量
- 可以win+Q直接搜索
- 或者右键我的电脑点击属性
- 点击高级系统设置
- 点击环境变量
- 找到系统变量Path——编辑
- 新建:我的bin目录是E:\vscodeConfiguration\mingw64\bin
- 然后一直确定到结束
2.4检查是否配置成功
-
打开cmd
-
进入bin目录
-
输入gcc -v或g++ -v
-
出现以下图片说明配置成功
3.VsCode配置c/c++
3.1下载c/c++插件
- 下载完成后重启vsCode
3.2配置
- 新建文件夹(用来放vsCode的项目)
-
在vsCode文件夹下创建一个
.vscode
文件夹并创建3个文件分别是c_cpp_properties.json,launch.json,tasks.json
可以直接复制三个json文件,但是路径需要修改,备注的区域都需要,但其他位置都不要动
- c_cpp_properties.json
{ "configurations": [ { "name": "Win32", "includePath": ["${workspaceFolder}/**"], "defines": ["_DEBUG", "UNICODE", "_UNICODE"], "windowsSdkVersion": "10.0.17763.0", "compilerPath": "E:\\vscodeConfiguration\\mingw64\\bin\\g++.exe", /*修改成自己bin目录下的g++.exe,这里的路径和电脑里复制的文件目录有一点不一样,这里是两个反斜杠\\*/ "cStandard": "c11", "cppStandard": "c++17", "intelliSenseMode": "${default}" } ], "version": 4 }
- launch.json
{ "version": "0.2.0", "configurations": [ { "name": "g++.exe build and debug active file", "type": "cppdbg", "request": "launch", "program": "${fileDirname}\\${fileBasenameNoExtension}.exe", "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "externalConsole": true, "MIMode": "gdb", "miDebuggerPath": "E:\\vscodeConfiguration\\mingw64\\bin\\gdb.exe", /*修改成自己bin目录下的gdb.exe,这里的路径和电脑里复制的文件目录有一点不一样,这里是两个反斜杠\\*/ "setupCommands": [ { "description": "为 gdb 启用整齐打印", "text": "-enable-pretty-printing", "ignoreFailures": true } ], "preLaunchTask": "task g++" } ] }
- tasks.json
{ "version": "2.0.0", "tasks": [ { "type": "shell", "label": "task g++", "command": "E:\\vscodeConfiguration\\mingw64\\bin\\g++.exe", /*修改成自己bin目录下的g++.exe,这里的路径和电脑里复制的文件目录有一点不一样,这里是两个反斜杠\\*/ "args": [ "-g", "${file}", "-o", "${fileDirname}\\${fileBasenameNoExtension}.exe", "-fexec-charset=UTF-8", "-I", "E:\\vsCode", /*修改成自己放c/c++项目的文件夹,这里的路径和电脑里复制的文件目录有一点不一样,这里是两个反斜杠\\*/ "-std=c++17" ], "options": { "cwd": "E:\\vscodeConfiguration\\mingw64\\bin" /*修改成自己bin目录,这里的路径和电脑里复制的文件目录有一点不一样,这里是两个反斜杠\\*/ }, "problemMatcher":[ "$gcc" ], "group": "build", } ] }
3.3测试
- 创建一个helloWorld文件夹放项目,项目名为helloWorld.cpp,然后按F5运行(或者右键runcode)
#include <stdio.h> #include <windows.h> int main() { printf("Hello World\n"); system("pause"); return 0; }
-
成功
4.总结
- c语言程序窗口执行到scanf函数出现闪退
可在头文件加上#include<stdlib>,main函数里return上面加上system("pause"); 可防止程序窗口闪退 - C语言在用外部控制台printf打印时出现闪退 可在头文件加上#include <windows.h>,main函数里return上面加上system("pause"); 可防止程序窗口闪退
5.配置优化
5.1输出
- 在外部控制台输出程序需要在代码中添加system(“pause”);然后打开launch.json文件,将下图中的"externalConsole": false改成"externalConsole": true,修改后再次运行c语言文件,运行结果如下,会发现程序输出在外部控制台.
- Code Runner插件配置后右键在vscode终端运行
5.2乱码
- 打开.vscode文件夹下的task.json文件,找到"${fileDirname}\${fileBasenameNoExtension}.exe"
在后面加上英文逗号然后回车到下一行,粘贴下面文本"-fexec-charset=UTF-8"并保存 - vscode界面右小角会显示当前代码文件的编码格式,二者统一即可,为GBK或者UTF-8均可
- cmd终端chcp可以查看当前系统默认编译器,65001代表UTF-8,936代表GBK;
vscode界面右小角会显示当前代码文件的编码格式 - 将系统默认编码改为UTF-8:win键–设置–时间和语言–语言–管理语言设置–更改系统区域设置–勾选Beta版使用Unicode UTF-8提供全球语言支持(缺点:系统设置更改,可能导致某些软件乱码)