VS Code环境配置问题

VS Code 环境配置

1. 配置 C++

跟着官网教程(英文版)和其他博客配置了一遍,却遇到了很多小问题:CMD编译能过,VS Code 里的终端就报错,还出现中文乱码问题等。现错误们已解决

官网教程Get Started with C++ and MinGW-w64 in Visual Studio Code

参考博客1VsCode安装和配置c/c++环境(超完整,小白专用)

参考博客2Windows下VSCode配置C++环境

推荐 MinGWWinLibs standalone build of GCC and MinGW-w64 for Windows


1.1 问题解决

按照官网教程及其他博客教程,安排了一波,结果 VS Code 终端一直报如下错

Assembler messages: Fatal error: can't create C:\Users\

不在 VS Code 终端,CMD 进入相应文件夹后,执行 g++ demo.cpp -o demo 编译后就可以运行出结果

在这里插入图片描述

按照网上说的权限问题,即使以管理员权限运行(右键 VS Code 图标—>选择属性—>选择兼容性—>勾选《以管理员身份运行该程序》),依旧报这个错

最后的最后!死在了中文路径上

在这里插入图片描述

在这里插入图片描述


1.2 分文件编写

下载 project manager 插件 来管理项目(快速切换文件夹)

// projects.json 文件 
[
	{
		"name": "Algorithm",
		"rootPath": "e:\\Codes\\WorkSpaceCPP\\01-Algorithm",
		"tags": ["CPP"],
		"enabled": true
	},
	{
		"name": "Projects",
		"rootPath": "E:\\Projects\\Projects_CPP",
		"tags": ["CPP"],
		"enabled": true
	},
	{
		"name": "Algorithm",
		"rootPath": "e:\\Codes\\WorkSpaceJava\\Algorithm",
		"tags": ["Java"],
		"enabled": true
	}
]

在这里插入图片描述

1.2.1 setting.json

cmd 输入命令: gcc -v -E -x c++ -然后把列出的所有 include 路径,加上双引号后 copy 到 json 配置中

// 用户环境 的 settings.json
{
    "C_Cpp.default.compilerPath": "E:\\Environment\\CPP\\MinGW\\mingw64\\bin\\g++.exe",
    "C_Cpp.default.intelliSenseMode": "windows-gcc-x64",
    "C_Cpp.default.includePath": [
        "E:/Environment/CPP/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/13.1.0/../../../../include/c++/13.1.0",
        "E:/Environment/CPP/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/13.1.0/../../../../include/c++/13.1.0/x86_64-w64-mingw32",
        "E:/Environment/CPP/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/13.1.0/../../../../include/c++/13.1.0/backward",
        "E:/Environment/CPP/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/13.1.0/include",
        "E:/Environment/CPP/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/13.1.0/../../../../include",
        "E:/Environment/CPP/MinGW/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/13.1.0/include-fixed"
    ],
}
1.2.2 c_cpp_properties.json
{
	"configurations": [
		{
			"name": "MinGW",
			"intelliSenseMode": "windows-gcc-x64",
			"compilerPath": "E:/EnvironmentSetting/CPP/MinGW/mingw64/bin/gcc.exe",
			"includePath": [
				"${workspaceFolder}/01-Sorted/**",  // 按照上面的项目截图,每次都得手动添加一个
				"${workspaceFolder}/02-Search/**",  // 递归找到头文件位置
				"${default}"
			],
			"defines": ["_DEBUG", "_UNICODE"],
			"cStandard": "c17",
			"cppStandard": "c++20"
		}
	],
	"version": 4
}
1.2.3 launch.json

先在设置中搜 windows,再配置 Debug 和 Run

C:\Windows\System32\cmd.exe
    
// 也可指定 windows timinal
C:\Users\Username\AppData\Local\Microsoft\WindowsApps\wt.exe  // 指定后好像不能调试了

在这里插入图片描述

{
	"version": "0.2.0",
	"configurations": [
		{
			"name": "Run",
			"type": "cppvsdbg",
			"request": "launch",
			"program": "${fileDirname}\\../\\bin\\${fileBasenameNoExtension}.exe",
			"args": [],
			"stopAtEntry": false,
			"cwd": "${fileDirname}",
			"environment": [],
			"console": "externalTerminal",
			"enableDebugHeap": true
		},
		{
			"name": "Debug",
			"preLaunchTask": "C/C++: g++.exe 生成活动文件",
			"type": "cppdbg",
			"request": "launch",
			"program": "${fileDirname}\\../\\bin\\${fileBasenameNoExtension}.exe",
			"args": [],
			// "program": "C:\\Windows\\System32\\cmd.exe", // 使用外部终端
			// // 避免闪退
			// "args": [
			// 	"/c",
			// 	"${fileDirname}\\../\\bin\\${fileBasenameNoExtension}.exe",
			// 	"&",
			// 	"pause"
			// ],
			"stopAtEntry": false,
			"cwd": "${fileDirname}",
			"environment": [{ "name": "config", "value": "Debug" }],
			"externalConsole": false,
			"internalConsoleOptions": "openOnFirstSessionStart",
			"filterStdout": false,
			"MIMode": "gdb",
			"miDebuggerPath": "E:\\EnvironmentSetting\\CPP\\MinGW\\mingw64\\bin\\gdb.exe",
			"setupCommands": [
				{
					"description": "Enable pretty-printing for gdb",
					"text": "-enable-pretty-printing",
					"ignoreFailures": true
				}
			]
		}
	]
}
1.2.4 tasks.json
{
    "tasks": [
        {
            "type": "shell",
            "label": "C/C++: g++.exe 生成活动文件",
            "command": "E:\\EnvironmentSetting\\CPP\\MinGW\\mingw64\\bin\\g++.exe",
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${fileDirname}/**.cpp",    // 编译源文件下的所有 .cpp 文件
                "-o",
                "${fileDirname}\\../\\bin\\${fileBasenameNoExtension}.exe", //重定向到 bin 目录下
                "-I",
                "${fileDirname}\\../\\include", // 链接头文件
                //"-fexec-charset=GBK", //避免中文乱码
                "-std=c++20"  // 执行的 c++标准
            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": "build",
            "detail": "调试器生成的任务。"
        }
    ],
    "version": "2.0.0"
}

1.2.5 当前编辑状态
描述
当前打开工作区的路径 (.vscode文件夹所在路径)E:\Codes\WorkSpaceCPP\01-Algorithm
当前编辑器打开的文件路径 (正在编辑的文件)E:\Codes\WorkSpaceCPP\01-Algorithm\01-Sorted\src\main.cpp
1.2.6 预定义变量含义
变量含义
${workspaceFolder}工作区文件夹E:\Codes\WorkSpaceCPP\01-Algorithm
${workspaceFolderBasename}工作区文件夹基本名称01-Algorithm
${file}文件E:\Codes\WorkSpaceCPP\01-Algorithm\01-Sorted\src\main.cpp
${fileDirname}文件目录名E:\Codes\WorkSpaceCPP\01-Algorithm\01-Sorted\src
${fileBasename}文件基本名称main.cpp
${fileBasenameNoExtension}文件基本名称(无扩展名)main
${fileExtname}文件扩展名.cpp
${relativeFile}相对文件01-Sorted\src\main.cpp
${relativeFileDirname}相对文件目录名01-Sorted\src
${execPath}执行文件的路径a.exe 的位置
${cwd}启动时任务运行器的当前工作目录

1.3 中文乱码

首先,VS Code 里默认都是用的 UTF-8 进行编码的,如下

在这里插入图片描述

在这里插入图片描述

但 使用 windows teminal 外部终端时,默认都是 gb2312 编码,这时候就会出现中文乱码,但就是想用 UTF-8。修改方法如下

  • 简单配置 windows teminal 外部终端,选择以 cmd 启动

    在这里插入图片描述

  • win+r 输入 regedit 打开注册表,添加字符串值,修改如下位置如下

    在这里插入图片描述

  • 最终效果如下(外部终端无法 Debug)

    在这里插入图片描述

    在这里插入图片描述

chcp命令用于显示和控制当前活动代码页。

代码页编码
936gb2312
65001utf-8

1.4 修改默认终端

在文件 -> 首选项 -> 设置 中打开设置页面,搜索 shell 找到 Terminal>Integrated>Shell:Windows

在这里插入图片描述

把地址切换成需要的某个 shell 的地址( powershell、cmd 和 bash )

点击 windows teminal,打开设置,在配置文件中选择Windows PowerShell选项卡,将命令行文本框内容改为powershell.exe -NoExit chcp 65001

在这里插入图片描述

本想修改默认终端,以便运行c++程序只打印结果的,弄了好久貌似不行,暂且只能用外部终端了,但就是不能调试;内部能调试但就是会输出一堆信息,看着难受。。。


2. 配置 Java

2.1 下载 JDK

Java JDK 官网下载地址Java Downloads | Oracle 中国

在这里插入图片描述


2.2 JDK 环境配置

假设 JDK 安装路径是 C:\Program Files\Java\jdk-20

“此电脑”—>“属性”—>“高级系统设置”—>“环境变量”—>“系统变量”点击“新建”按钮。在新窗口中,输入变量名 JAVA_HOME,变量值 C:\Program Files\Java\jdk-20,然后点击“确定”。找到名为Path 的环境变量,然后点击“编辑”。在新窗口中,点击“新建”,然后输入%JAVA_HOME%\bin,然后点击“确定”。点击所有打开的窗口的“确定”按钮,关闭这些窗口

在这里插入图片描述

打开 CMD 并输入 java -version 来检查配置是否正确(配置一般不会遇到问题)

在这里插入图片描述


2.3 安装插件

任意编写一份 java 代码,VS Code 会自动识别语言,然后提示安装对应插件。 也可直接在应用商店里搜

在这里插入图片描述

然后就可以愉快的 coding 了

在这里插入图片描述

在这里插入图片描述


创建 Java 项目:点设置—>点命令面板(快捷键:Ctrl+Shift+p)—>输入 java 选创建项目即可

在这里插入图片描述


3. 其他配置

3.1 快捷键设置

  • 查找 setting.json

    • 首先,找到键盘快捷方式 文件->首选项->键盘快捷方式

    • 然后,再搜索setting.json

      在这里插入图片描述

  • C++ 快捷键

    • 首先,找到键盘快捷方式 文件->首选项->键盘快捷方式

    • 然后,再搜索c++

      在这里插入图片描述


3.2 指定文件位置

CPP

// 配置 CPP 默认编译器路径
"C_Cpp.default.compilerPath": "E:\\Environment\\CPP\\MinGW\\mingw64\\bin\\g++.exe",

"C_Cpp.default.intelliSenseMode": "windows-gcc-x64",

// 设定"code-runner.executorMap"避免乱码:
"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt -finput-charset=UTF-8 -fexec-charset=GBK && $dir$fileNameWithoutExt",
    
"cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt -finput-charset=UTF-8 -fexec-charset=GBK && $dir$fileNameWithoutExt",      

Java

//指定 java 的 .class 文件 输出路径(创建项目则不用此设置)
"java.project.outputPath": "E:\\Codes\\VSCode\\OutputPath\\JavaOutput",

// 配置 code runner 插件 指定输出 .class 位置
"code-runner.executorMap": {
        "java": "cd $dir && javac $fileName -d E:\\Codes\\VSCode\\OutputPath\\02_JavaOutput && cd E:\\Codes\\VSCode\\OutputPath\\02_JavaOutput && java $fileNameWithoutExt",
 }

Python

// python配置,python.exe编译器的位置
"python.defaultInterpreterPath": "E:\\Environment\\Python\\Codes\\Scripts\\python.exe",

"code-runner.executorMap": {
 "python": "E:\\Environment\\Python\\Codes\\Scripts\\python.exe",
}

3.3 删除插件及文件残余

快捷键 win + R 打开运行 %appdata% 回车,删除当前目录下的 Code

win + R 输入 %userprofile% 回车, 删除当前目录下 .vscode 文件夹

在这里插入图片描述


3.4 修改插件安装位置

VS Code 插件一般默认安装在 C:\Users\UserName\.vscode\extensions目录下,把它里面的所有文件剪切到自定义的目录下,如 E:\Environment\VSCode\.vscode\extensions。然后打开 cmd 输入如下指令:

code --extensions-dir "E:\Environment\VSCode\.vscode\extensions"
    
code --user-data-dir "E:\EnvironmentSetting\VSCode\temp" --extensions-dir "E:\EnvironmentSetting\VSCode\.vscode\extensions"

再接着修改其快捷方式目标路径:在目标后面添加如下指令(注意与前面有一个空格)

 --extensions-dir "E:\Environment\VSCode\.vscode\extensions"

在这里插入图片描述


3.5 解决内存占用过大问题

  • 点开设置搜:search.followSymlinks,将勾号去掉再重启一下

    在这里插入图片描述

  • VSCode 存储文件占用 C 盘过大的问题解决方案

    通过windirstat软件分析C盘,类似软件还有:SpaceSniffer。必会有它(若经常用 vscode 的话):

    C:\Users\flyboy\AppData\Roaming\Code\User

    • 在 VSCode 图标上鼠标右键,打开属性设置,再在**目标(T)**后追加存放位置,比如:

      --user-data-dir "E:\EnvironmentSetting\VSCode\temp" // 修改用户数据存放位置
      
    • 内存占用优化方法

      VScode 设置,然后搜索:C_Cpp.intelliSenseCacheSize,修改默认的5120为1024,根据自己的需求调整。

    • 修改完快捷方式的属性后,再修改 注册表,以便让修改更彻底

      win+r 输入 regedit 打开注册表,找到如下位置再将指令添加进去

      在这里插入图片描述

      // 修改插件及用户数据存储位置
      "E:\应用软件类\Program Files\Microsoft VS Code\Code.exe" --user-data-dir "E:\EnvironmentSetting\VSCode\temp" --extensions-dir "E:\EnvironmentSetting\VSCode\.vscode\extensions"
      

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

星航夜空的帆舟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值