vsCode的使用过程中遇到的问题?

注意事项

注意:由于需要经常用的是linux系统,因为疫情又不想装双系统或者虚拟机,因此本人采用的是在Windows自带的linux子系统(ubuntu)进行linux下的编程工作。

准备事项
  1. 安装windows下的子系统ubuntu,对应软件商店下载。

  2. 安装windows平台下的vsCode软件

  3. 在ubuntu子系统内安装以下依赖

    sudo apt-get install build-essential gdb g++ gcc
    

    然后输入code .,打开WSL版本的visual studio code.

  4. 在对应的插件市场下载需要的插件

    c/c++ 
    

    最开始在这里安装感觉下载速度特别慢,甚至不知道有没有在下载,网上有修改代理的方法,我试了感觉没什么效果。可以直接打开windows下的vsCode插件下载,总感觉这个速度快一点,然后进入WSL版本查看是否可以安装。

    我发现仍然是不可以,进入之后显示的是下载了好几个文件但是安装不了,因此建议从github下下载vsix文件安装,版本下对安装成功。

有哪些必备的插件?
c/c++ :必须的编译器
c/c++ compile Run
c++ intellisense
Chinese (Simplified) Language Pack for Visual Studio Code: 汉化
Remote - WSL:ubuntu进入会提示你安装。
值得参考的文献

1.Using C++ and WSL in VS Code
直接看官方教程就好了,找的其他的资料都太局限性了,真的省了好多事情。

过程中遇到的问题以及解决情况?
从github下载文件的速度真的太慢了。

下载速度慢也就算了,还会下载失败,让人头疼。怎么解决从github下载资源慢?,知乎回答,感觉改host文件不怎么有效,码云这个稍微快一点。

解决github release下载慢/下载失败的问题,Offcloud的网站注册下载,对于我想下的文件没有下载成功,具体是否有效仍然待定,可能其他线路选项需要会员功能。

最快的方法是采用科学绕过网络限制下载,我购买的产品只有手机APP使用正常,其余都挂掉了,因此再通过USB传到电脑,突然发现一加有USB网络功能功能。

收获整理

尽量先去官方网站看教程,特别是用户较多的产品,那里的干货比CSDN或者百度经验上的靠谱一点。

办法总比困难多,遇到github下载总失败的情况,不要选择等,其实可以上网查查有没有别的好办法解决这个困难,等是最低效的,不要选择逆来顺受。

vscode连接不到扩展商店怎么办?

解决方法就是:删掉代理服务器里面的设置,再试试能不能连上,如果不行的话再还原吧

参考:vscode连接不到扩展商店

解决vscode远程连接linux系统无法跳转问题

因远端未安装相应插件导致的,注意在WSL版本下安装C/C++。

参考文献

利用vsCode进行程序调试

在原先程序基础下会生成.vscode文件夹,项目的配置文件位于.vscode文件夹下。主要有三个文件

  • c_cpp_properties.json :编译路径和智能感知设置, (compiler path and IntelliSense settings),负责更改路径等设置
  • tasks.json :生成程序操作,(compiler build settings) ,负责编译
  • launch.json :调试设置, (debugger settings),负责调试

配置项的信息如下

• version:版本号,不用修改
• configurations:数组类型,用来配置 每一项调试任务的具体配置信息
• type:调试环境的具体类型 node、java、cppdbg 等等
• name:调试任务的名称,用与在下拉列表中展示
• program:启动文件的路径,对于该路径中的变量,下面在介绍
• request:调试模式,一共有两种模式,launch:和应用一起启动,attach:应用已经启动了,但是又想在不重新启动的情况下调试该应用,就可以把调试器附加到应用上
• runtimeExecutable:应用程序执行的时候的执行期,默认是 node,应该为决定路径或者添加到 PATH 路径上的
• console:启动调试终端的位置,一般都 3 个值,如果你的打印信息出现在终端上,不能很好的查看对应变量值可以调整这个值internalConsole:VS Code 的调试控制台,integratedTerminal:VS Code 的集成终端,externalTerminal:VS Code 外部的集成终端
• env:对象,程序启动是传递的环境变量
• args:程序启动是传递的参数
• cwd:程序启动是的跟目录配置
• window:为 window 平台单独设置配置项
• linux:为 linux 平台单独设置配置项
• osx:为 Mac OS 平台单独设置配置项

常见变量

• ${workspaceFolder}:项目文件夹在 VS Code 中打开的路径
• ${file}:当前开打开(激活)的文件
• ${relativeFile}:相对于 {workspaceFolder} 的文件路径
• ${fileBasename}:当前打开文件的名称
• ${fileBasenameNoExtension}:当前打开文件的名称,不带扩展名的
• ${fileExtname}:当前打开文件的扩展名
• ${fileDirname}:当前打开文件的文件夹名称

task.json的设置:注意launch.json中的"preLaunchTask"调用与“label”相同的task。

Terminal > Configure Default Build Task 默认的g++task.json如下

{
	"version": "2.0.0",
	"tasks": [
		{
			"type": "shell",
			"label": "C/C++: gcc build active file",//任务名称,和launch.json中的preLaunchTask必须相同
			"command": "/usr/bin/gcc",// 终端命令
			//"command": "D:\\mingw64\\mingw64\\bin\\g++.exe",//windows平台下按照路径设置
			"args": [
				"-g",
				"${file}",
				"-o",
				"${fileDirname}/${fileBasenameNoExtension}"
			],// 终端命令附加参数
			"options": {
				"cwd": "/usr/bin"
			},
			"problemMatcher": [
				"$gcc"
			],
			"group": {
				"kind": "build",
				"isDefault": true
			}
		}
	]
}

默认launch.json的默认设置:需要注意的参数为"program",此为需要调试的目标文件,应当设置为编译输出的文件位置;其次需要添加"preLaunchTask",此项的名字应与tasks.json中的任务名称一致。

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "gcc-7 build and debug active file",
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}/${fileBasenameNoExtension}",
            "args": [],// 调试时传递给程序的参数
            "stopAtEntry": false,// 调试时是否停在程序入口:{true:是,false:否}
            "cwd": "${workspaceFolder}",// 工作目录
            "environment": [],/ 额外的环境变量
            "externalConsole": false,// true:输出到外部终端;false:只输出到软件终端(有显示不全的可能)
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "gcc-7 build active file",// 预编译任务名称,和tasks.json中的label必须相同
            "miDebuggerPath": "/usr/bin/gdb"
            //"miDebuggerPath": "D:\\mingw64\\mingw64\\bin\\gdb.exe",//windows平台下按照路径设置
        }
    ]
}

默认的c_cpp_properties.json设置:其中最主要为"includePath"的引用和库的路径,根据引用内容进行配置。

{
  "configurations": [
    {
      "name": "Linux",
      "includePath": ["${workspaceFolder}/**"],
      "defines": [],
      "compilerPath": "/usr/bin/gcc",
      // "compilerPath": "D:\\mingw64\\mingw64\\bin\\g++.exe",//windows平台下按照路径设置
      "cStandard": "c11",
      "cppStandard": "c++17",
      "intelliSenseMode": "clang-x64"
    }
  ],
  "version": 4
}

文件处于预览模式有个标识,就是标题栏的文件名称是斜体的.
如何关闭?在设置文件里设置 workbench.editor.enablePreviewfalse 即可,这是全局设置的,每次都是打开新 tab。

(NoPermissions (FileSystemError): Error: EACCES: permission denied
目前看都说是权限问题。

取消C/C++ Extension: 正在下载 2/4: ClangFormat (Linux / x86_64)
目前看需要直接安装vsix文件,但下载不下来

字体设置

VsCode 只支持等宽字体 ,所以好多字体都不能用

解决方法:注意这里设置之后 中文字体显示就OK了

 "editor.fontFamily": "Consolas, Dengxian"

可能出现的错误

路径存在中文,这个错误真得仔细看,不然调试运行各种莫名其妙的问题。

VSCode启动终端报错:终端进程启动失败:shell可执行文件“C:Windowssystem32and.exe;路径不存在,建议对应位置是否存在该执行文件?修改task.json,launch.json的文件内容.

参考文献

基于 VS Code + MinGW-w64 的C语言/C++简单环境配置,专致小白
VS Code 配置调试参数、launch.json 配置文件属性、task.json 变量替换、自动保存并格式化、空格和制表符、函数调用关系、文件搜索和全局搜索

windows平台下如何修改cmd的命令行终端改为linux命令行?

1.找到你安装Git的目录,在bin目录下有个bash.exe,复制bash的地址,比如:C:\Program Files\Git\bin\bash.exe.
2.在打开的设置面板中,搜索框内搜索 Shell: Windows ,找到这一项:Terminal › Integrated › Shell: Windows(应该是搜索结果的第一项)
3.将该项输入框内容替换为上面复制的bash.exe的地址,重启Vscode ,打开控制台终端,此时终端变成了我们喜欢的 bash 窗口了.

参见文章Vscode 将终端改为 Git bash

vscode 头文件包含问题_VScode编译C++ 头文件显示not found的问题

vscode检测到#include错误,请更新includePath

点波浪线添加,如果还没有效果建议查看编译的命令,有的时候在波浪线处添加了,但实际上编译时并没有添加.

使用vscode进行文件比对diff

选中文件,右键选择以进行比较

matlab+vs code配置:感觉这个没什么用
【VS Code配置matlab】手把手教学,matlab也能自动补全+瞬间启动+代码整理!

visual studio 安装过程中遇到的问题

正在安装其他程序,请等待该安装完成,然后再次常识安装此软件。
计算机正忙于安装一个非visual studio的程序。选择”继续“可在其他安装仍在运行时安装Visual Studio。这可能会导致安装的其他部分出现问题。选择”重试“可在其他安装完成后,继续Visual Studio安装。选择”取消“可取消Visual Studio安装。

Tomato学习笔记-Vscode配置Makefile(使用task.jason和launch.jason)

vscode编译c++提示 No such file or directory该怎么解决呢?

A Unable to watch for file changes in this large workspace folder.Please follow the instructions link to resolve this issue.

原因分析:这个提示通常出现在使用Visual Studio Code(VS Code)时,当你的项目文件夹非常大,VS Code可能无法有效地监控文件的更改。为了解决这个问题,你可以通过添加一个.vscode文件夹到你的工作区的根目录,并在其中创建一个settings.json文件来配置不监控的文件夹。

下面是具体的步骤:

  1. 在你的工作区的根目录下,创建一个名为.vscode的文件夹(如果它不存在的话)。

  2. 在.vscode文件夹中,创建一个名为settings.json的文件。

  3. 编辑settings.json文件,添加以下内容:


{
  "files.watcherExclude": {
    "**/path/to/your/large/folder/**": true
  }
}

请将/path/to/your/large/folder替换为你想要VS Code不监控的具体文件夹路径。

  1. 保存settings.json文件。
    这样,VS Code就会忽略你指定的文件夹,不再监控其中的文件更改,从而可能提高性能。
Logo

更多推荐