VScode中c++环境配置积累

vscode自己在使用过程中遇到很多坑,记录下来,便于查找,好的IDE配置让你的开发事半功倍。

1.单个C++文件执行

对于leetcode刷题的这种单个cpp文件编译运行场景,或者求职面试时单独写一个cpp文件运行,可以在vscode中安装插件c++,这会对c++语言进行彩色高亮显示,并且可以进行代码补全等其他方便的功能。然后再安装code runner这个可以直接生成单个cpp文件对应的可执行文件,跳过对繁琐的task.json,launch.json文件的配置。当然要想真正执行这个文件,还要再环境里安装编译器,在winddows一般安装MinGW,而在linux上较为方便,只需要一行命令。

sudo apt update
sudo apt install build-essential

这个命令会安装 gcc, g++ 和 make 等工具,这些是进行基本 C++ 开发所必需的。

2.滚轮实现字体的放大缩小

ctrl + ,打开设置对话框,然后搜索mounse wheel zoom ,这可以实现ctrl+滚轮实现页面字体的变大变小。

3. run in terminal

在设置中搜索,run in terminal,可实现在运行时,输出结果在terminal
run in terminalB视频地址

4. 代码补全快捷键

Ctrl+Space是触发代码补全的基本快捷键,而Ctrl+Shift+Space则用于显示参数提示。

5. vscode如何让文本超出屏幕自动换行

打开左下角的设置图标–>点设置–>Editor: Word Wrap 搜索这个
设为on将在视口宽度换行,设为off则永不自动换行
文本超出屏幕自动换行

6. 图标优化插件

 图标优化插件

7.错误旁侧显示插件

在这里插入图片描述

8. 快速查看当前文件的结构

利用OUTLINE
方法2:点上面的>index
gfb

9. vscode定义跳转缓慢

在linux环境下或者windows环境使用vscode时发现,使用ctrl+鼠标左键进行跳转到定义时或者用F12,耗时特别长,长到无法接受,感觉是把所有文件搜索了一遍;
并且跳转不准确,会弹出一个列表;
搜索发现,这和其使用的c/c++智障引擎有关系,解决方法如下:

在文件-首选项-设置中搜索C_Cpp.intelliSenseEngine
指定使用的引擎为Tag Parser
设置完成后,你会发现,vscode看代码起飞了。
函数定义跳转设置

10. VS Code中C/C++ 无法跳转到定义的解决办法

这个解决方法自己参考:参考原文链接

首先试试重启,
不行就换一下c++插件的版本;
还不行,可以配置c_cpp_properties.json
c_cpp_properties.json 文件是 Visual Studio Code 中用于配置 C/C++ 插件(通常是 Microsoft 的 C/C++ 插件)的关键文件。它允许用户指定如何为 C/C++ 项目配置 IntelliSense(智能代码补全)、编译设置以及其他语言相关的设置。

c_cpp_properties.json 通常包含以下几个主要部分:

下面是一个简单的 c_cpp_properties.json 文件示例:

{
    "configurations": [
        {
            "name": "Linux",
            "includePath": [
                "${workspaceFolder}/**",
                "/path/to/some/library/include"
            ],
            "defines": [
                "DEBUG"
            ],
            "compilerPath": "/usr/bin/gcc",
            "cStandard": "c11",
            "cppStandard": "c++17",
            "intelliSenseMode": "gcc-x64"
        }
    ],
    "version": 4
}

在这个例子中,配置了包括路径和编译器信息,为使用 gcc 编译器的 Linux 环境定制了 IntelliSense 设置。通过正确配置这些信息,可以确保 VSCode 能够更准确地提供代码补全、代码导航和语法高亮等功能。

11.设置光标平滑过渡

光标平滑过渡
其他平滑过渡设置
在这里描述

12 定义函数跳转

一、跳转到定义位置

查看某个函数的代码,需要跳转到具体的位置,具体的实现方式有下面三种:

1、光标定位到函数,按 F12;
2、光标定位到函数,鼠标右键,转到定义;
3、按住 Ctrl 键,同时点击函数。

二、返回跳转前的位置
当读懂函数后,需要回到跳转前的位置,windows环境下具体的实现方式有下面两种:
1、按 ctrl + shift + 8
2、按 Alt + ← (左箭头)

三、linux-ubuntu环境下进行快捷键设置
点击左下角的设置图标,然后有快捷键设置;
在这里插入图片描述

13vscode 配置c++插件–头文件路径问题

是的,c_cpp_properties.json 文件会影响 Visual Studio Code 中 C/C++ 代码的函数跳转功能。这是因为 c_cpp_properties.json 是 VS Code 的 C/C++ 扩展(由 Microsoft 提供的 C/C++ 插件)用来配置包括头文件路径、编译器信息、定义宏等项目的配置文件,它影响编辑器对代码的分析和理解。

具体影响的方面

  1. 函数跳转(Go to Definition/Declaration)

    • VS Code 需要知道头文件的所在位置,以便正确地解析函数和符号。如果 c_cpp_properties.json 中的 includePath 没有配置正确的头文件目录,编辑器无法找到这些头文件,那么函数跳转功能就无法正常工作。
    • 如果没有正确指定头文件路径,VS Code 在代码中看到某个符号可能会无法解析,从而无法进行跳转。
  2. 自动补全

    • 同样,自动补全(IntelliSense)功能也需要依赖 includePath 中的头文件。如果 VS Code 找不到某个头文件,那么在使用其中的函数或类时,无法提供正确的自动补全建议。
  3. 错误和警告提示

    • 配置不当也会导致 VS Code 误报错误或遗漏错误提示,进而影响代码的可读性和维护性。

c_cpp_properties.json 关键字段

  • includePath: 指定 C/C++ 源文件需要包含的头文件的路径。确保所有的库和系统头文件路径都在 includePath 中是很重要的,这样 VS Code 才能正常解析头文件。

    "includePath": [
        "${workspaceFolder}/**",
        "/usr/include",
        "/usr/local/include"
    ]
    
  • compilerPath: 指定编译器的路径,通常用于让 VS Code 知道编译器的标准库和其他默认的 include 路径。如果没有正确设置,可能会导致一些标准库头文件无法找到。

    "compilerPath": "/usr/bin/gcc"
    
  • defines: 你可以在项目中添加需要定义的宏。某些条件编译的宏如果没有在这里定义,可能会导致 VS Code 对代码的理解出现偏差,影响函数的跳转和解析。

    "defines": [
        "DEBUG",
        "_MYDEFINE"
    ]
    
  • browse: browse.path 用于文件系统的符号搜索,当用户进行“查找符号”或“跳转到某个符号”时,VS Code 会使用这些路径。

    "browse": {
        "path": [
            "${workspaceFolder}",
            "/usr/include",
            "/usr/local/include"
        ],
        "limitSymbolsToIncludedHeaders": true
    }
    

14如何配置vscode调试环境(使用gdb与launch.json)

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(gdb) Launch",    //名称
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/bin/myapp",    //当前目录下编译后的可执行文件
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",    //表示当前目录
            "environment": [],
            "externalConsole": false, // 在vscode自带的终端中运行,不打开外部终端
            "MIMode": "gdb",    //用gdb来debug
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "make"  //在执行debug hello world前,先执行build hello world这个task,看第4节
        }
    ]
}

cmake终端输出彩色显示,很推荐

在这里插入图片描述但是这个插件会和code runner打架,需要把code runner卸载掉才可以;

cmake底部菜单栏显示设置cmake

括号高亮

方式一:ctrl+,打开搜索框输入brack pair找到如下图的两个红框将其选为active即可
在这里插入图片描述

当前打开页面标签高亮

在这里插入图片描述
添加下面的内容:

"workbench.colorCustomizations": {
    "tab.activeBackground": "#077290",
    // "editor.lineHighlightBackground": "#ff0000",
    "editor.lineHighlightBorder": "#006188",
},

效果
在这里插入图片描述

左右括号跳转快捷键

左右括号之间跳转:

ctrl + shift + \

固定打开文件不被覆盖

可看到打开的两个文件右边一个是斜体,左边一个是正体,正体已经被固定,通过双击后缀h
在这里插入图片描述

调整VScode终端输出行数

有几种方法可以增加VSCode终端的输出显示行数:

方法1:调整终端滚动缓冲区设置

打开设置:

Ctrl/Cmd + , → 搜索 "terminal scrollback"

或者直接编辑settings.json:

{
    "terminal.integrated.scrollback": 10000
}

默认值通常是1000行,你可以设置为更大的数字(如5000、10000或更多)。

方法2:通过设置界面

  1. 打开VSCode设置 (Ctrl/Cmd + ,)
  2. 搜索 terminal scrollback
  3. 找到 Terminal › Integrated: Scrollback
  4. 将数值改为你想要的行数

方法3:临时增加特定命令的输出

# 使用 less 分页查看
your_command | less

# 输出到文件再查看
your_command > output.log 2>&1
code output.log

# 使用 tee 同时显示和保存
your_command | tee output.log

方法4:调整终端窗口大小

  • 拖拽终端面板边缘增加高度
  • 使用 Ctrl/Cmd + Shift + `` 最大化终端
  • 设置更大的终端字体以减少每行占用空间

推荐设置

{
    "terminal.integrated.scrollback": 50000,
    "terminal.integrated.fastScrollSensitivity": 5
}

建议设置10000-50000行,这样可以保留足够的历史输出而不会占用太多内存。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐