编译软件:x86_64-w64-mingw32(当然,你也可以用别的,能编译c++就行)
vscode(不用我解释这是干嘛的了吧)
随意,记得路径就好(ps:不要用中文,很多bug)
安装这几个插件(什么,你不知道怎么安装?!!)
安装好编译器(一路点下一步,路径别中文就好)
记得路径,详细安装教程就不写了
win打开搜索框(点下win就好),输入高级系统设置,打开这个界面
点击环境变量,然后点击path,点击编辑,新建
新建,输入你的编译器的位置(写到bin就好)
然后先测式一下看看有没有配好
先打开cmd,输入g++
出现这样就可以了,如果没有,先试试看看path有没有写错,还是不行就关机重启试试,再不行就重新安装,如果还是不行就换台电脑。
新建一个cpp文件
#include
using namespace std;
int main()
{int t=0;
cin>>t;
cout << "Hello Vscode" << endl;
cin>>t;
return 0;
}
打开cmd,cd到那个文件的目录
输入 g++ xxx.cpp -o xxx.exe
如果新生成了exe文件,代表到此一切正常。你已经成功安装了编译器。
这个文件就是vscode运行代码时调用的文件,内部含有包括如何编译,编译完后放哪等多个指令,vscode官方文档内有相关详细说明,英语好的可以去看看,这里只是说些简单的配置。
用Visual Studio Code 来生成您的C++应用程序 | Microsoft Docs
第一个文件 c_cpp_properties.json
主要用于记录编译器地址(大概?)
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceRoot}",
修改下面代码//
"D:\\project\\IDE\\vs code\\ide\\x86_64-8.1.0-release-posix-seh-rt_v6-rev0\\mingw64\\include\\**",
"D:/project/IDE/vs code/ide/x86_64-8.1.0-release-posix-seh-rt_v6-rev0/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++",
"D:\\project\\IDE\\vs code\\ide\\x86_64-8.1.0-release-posix-seh-rt_v6-rev0\\mingw64\\bin\\..\\lib\\gcc\\x86_64-w64-mingw32\\8.1.0\\include\\c++\\x86_64-w64-mingw32",
"D:\\project\\IDE\\vs code\\ide\\x86_64-8.1.0-release-posix-seh-rt_v6-rev0\\mingw64\\bin\\..\\lib\\gcc\\x86_64-w64-mingw32\\8.1.0\\include\\c++\\backward",
"D:\\project\\IDE\\vs code\\ide\\x86_64-8.1.0-release-posix-seh-rt_v6-rev0\\mingw64\\bin\\..\\lib\\gcc\\x86_64-w64-mingw32\\8.1.0\\include",
"D:\\project\\IDE\\vs code\\ide\\x86_64-8.1.0-release-posix-seh-rt_v6-rev0\\mingw64\\bin\\..\\lib\\gcc\\x86_64-w64-mingw32\\8.1.0\\include-fixed",
"D:\\project\\IDE\\vs code\\ide\\x86_64-8.1.0-release-posix-seh-rt_v6-rev0\\mingw64\\bin\\..\\lib\\gcc\\x86_64-w64-mingw32\\8.1.0\\..\\..\\..\\..\\x86_64-w64-mingw32\\include"
截止/
],
"defines": [
"_DEBUG",
"UNICODE",
"__GNUC__=6",
"__cdecl=__attribute__((__cdecl__))"
],
"intelliSenseMode": "msvc-x64",
"browse": {
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": "",
"path": [
"${workspaceRoot}",
修改下面代码//
"D:\\project\\IDE\\vs code\\ide\\x86_64-8.1.0-release-posix-seh-rt_v6-rev0\\mingw64\\include\\**",
"D:/project/IDE/vs code/ide/x86_64-8.1.0-release-posix-seh-rt_v6-rev0/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++",
"D:\\project\\IDE\\vs code\\ide\\x86_64-8.1.0-release-posix-seh-rt_v6-rev0\\mingw64\\bin\\..\\lib\\gcc\\x86_64-w64-mingw32\\8.1.0\\include\\c++\\x86_64-w64-mingw32",
"D:\\project\\IDE\\vs code\\ide\\x86_64-8.1.0-release-posix-seh-rt_v6-rev0\\mingw64\\bin\\..\\lib\\gcc\\x86_64-w64-mingw32\\8.1.0\\include\\c++\\backward",
"D:\\project\\IDE\\vs code\\ide\\x86_64-8.1.0-release-posix-seh-rt_v6-rev0\\mingw64\\bin\\..\\lib\\gcc\\x86_64-w64-mingw32\\8.1.0\\include",
"D:\\project\\IDE\\vs code\\ide\\x86_64-8.1.0-release-posix-seh-rt_v6-rev0\\mingw64\\bin\\..\\lib\\gcc\\x86_64-w64-mingw32\\8.1.0\\include-fixed",
"D:\\project\\IDE\\vs code\\ide\\x86_64-8.1.0-release-posix-seh-rt_v6-rev0\\mingw64\\bin\\..\\lib\\gcc\\x86_64-w64-mingw32\\8.1.0\\..\\..\\..\\..\\x86_64-w64-mingw32\\include"
截止/
]
}
}
],
"version": 4
}
先打开cmd
输入
gcc -v -E -x c++ -
然后会出现一堆代码,这就是需要修改的代码地址
从#include<...>search starts here:
开始复制,到最后(end of。。。不要)
替换掉上面所说的需要替换的地方(注意格式 “ ”,\ /)
这就是需要调取头文件的路径(大概,我也不是很懂)
第二个launch.json
{
"version": "0.2.0",
"configurations": [
{
"name": "(gdb)zijixiede配置名称", // 配置名称,将会在启动配置的下拉菜单中显示
"type": "cppdbg", // 配置类型,这里只能为cppdbg
"request": "launch", // 请求配置类型,可以为launch(启动)或attach(附加)
"program": "${workspaceRoot}/${fileBasenameNoExtension}.exe",// 将要进行调试的程序的路径,要与下面tesk的相同
"args": [], // 程序调试时传递给程序的命令行参数,一般设为空即可
"stopAtEntry": false, // 设为true时程序将暂停在程序入口处,一般设置为false
"cwd": "${workspaceRoot}",// 调试程序时的工作目录,一般为${workspaceRoot}即代码所在目录
"environment": [],
"externalConsole": true,// 调试时是否显示控制台窗口,一般设置为true显示控制台
"MIMode": "gdb",
"miDebuggerPath":"D:\\project\\IDE\\vs code\\ide\\x86_64-8.1.0-release-posix-seh-rt_v6-rev0\\mingw64\\bin\\gdb.exe",//编译器位置
"preLaunchTask": "C/C++: gcc.exe", // 调试会话开始前执行的任务,需要与tasks的lab相同
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]
}
点击调试后会运行的程序, 用于设置配置类型,打开位置等, "program"可以修改exe打开位置,有些人希望把cpp和exe分开放,好看。
第三个tasks.json
用于编译代码,如果你有多个编译器,甚至可以写多个使用
{
"tasks": [
{
"type": "cppbuild",
"label": "C/C++: gcc.exe",//生成活动文件",
"command": "D:\\project\\IDE\\vs code\\ide\\x86_64-8.1.0-release-posix-seh-rt_v6-rev0\\mingw64\\bin\\g++.exe",//执行脚本或编译器路径,c就改为gcc.exe
"args": [
"-fdiagnostics-color=always",
"-g",
"${file}",//单个编译
// "${fileDirname}\\*.cpp",//这里是多文件编译,在同一个目录下
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"//修改.exe文件生成位置
],
"options": {
"cwd": "${workspaceFolder}"//已执行脚本工作目录
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "调试器生成的任务。"
}
],
"version": "2.0.0"
}
修改完以上,就可以正常运行了,点击ctrl+f5
缺点:配置相对麻烦
优点:可操作性强,可以选择编译一个或多个文件,写oj作业必备。
可以设置壁纸,有很多好用的mod,装好了比vs快还好用。
1.无法输出中文:点击右下角utf-8,改为 gb 2312
2.编译不出来:检查代码有没有写对,有大错就会这样(比如没写int main())没问题就检查一下路径,有中文不行,再看看。vscode有没写对,我配置的文件都是相关的,如果不是一套copy会有问题。