vscode简易指南

196次阅读

共计 6335 个字符,预计需要花费 16 分钟才能阅读完成。

vscode官网 – Visual Studio Code – The open source AI code editor

版本

vscode有两个官方版本,同时也有非官方的codeserver项目

桌面版 – Download Visual Studio Code – Mac, Linux, Windows
网页版 – 工作區 – Visual Studio Code

codesever是由coder团队打造的第三方网页版vscode,需要自己部署到自己的服务器上。
与官方不同的是,codeserver是在你的服务器上编译和存放你的代码。
而官方的网页版则是将代码存储到你本地或你指定的云端,而且可能无法进行编译
同时,vscode网页版可能无法通过手机打开,而codeserver则可以在几乎任何设备打开

项目地址 – GitHub – coder/code-server: VS Code in the browser

下面主要是关于桌面版的内容

外观

vscode默认英文版,需要自己下翻译包,下载完成之后点击右下角弹出的Restart即可
为了方便,本文部分图片采用中英文对照的方式,其他图片将采用英文原文展示

vscode简易指南
图为 VS Code 插件商店官方中文翻译包

软件最左边一栏是工具栏,从上到下分别是
文件浏览器(Ctrl + Shift + E)
搜索(Ctrl + Shift + F)
源管理(Ctrl + Shift + G)
运行与调试(Ctrl + Shift + D)
插件商店(Ctrl + Shift + X)
如果有装插件的话可能会多几个按钮出来

软件右边是Github Copilot(Ctrl + Alt + I),一个写代码用的ai
需要登陆GHE或Github/Google/Apple账号才能使用

vscode简易指南

编写代码时文件可以直接用vscode打开,也可以用vscode打开整个文件夹,再从文件浏览器中选中文件
建议是直接打开文件夹,再选中文件
文件路径中最好不要有中文和全角符号,可能造成编译/运行报错
打开时可能会出现一个提示框,提示你是否信任这些文件
一般直接点Open或者Yes就行了,除非你不是很信任

vscode简易指南
图为文件安全提示,左右对应
vscode简易指南
左边是打开单个文件,右边是打开一个文件夹,两种情况下文件浏览器的不同

断点的使用 (debug)

vscode简易指南

在数字前面点击,会启用当前行的断点
在调试程序时会在对应的点处暂停,并在左侧上方显示所有变量的当前值

vscode简易指南

我们把断点所处的行简称断点行
要注意,断点行此时并未执行,看到的变量是执行完断点行上面的代码之后的值,并不是执行完断点行之后的值

vscode简易指南
调试工具栏

在调试过程中,会出现一个工具栏
从左到右,分别是
继续 (F5) – 继续运行直到下一个断点
逐过程 (F10)
单步调试 (F11)
单步跳出 (Shift + F11)
重新开始 (Ctrl + Shift + F5) – 停止运行并重新编译运行
停止 (Shift + F5) – 停止运行

在C这种编译后运行的程序中,单步跳出不可用
在C/C++和Python中,逐过程、单步调试都会执行当前断点行的内容,然后把行的黄标移动到下一步,定住不动
在Python中,单步跳出的功能和逐过程一样

.vscode

.vscode是一个文件夹,位于你项目的根目录,或者说你vscode打开的目录

里面存放的是配置vscode用的json文件,可以用于配置C++/Python等运行环境
可以由vscode创建,也可以自己创建或从其他地方复制过来
一般不用理会这个文件夹
如果vscode没有识别到编译器,可以在这个文件夹里面配置tasks.json来指定编译器的位置
但请不要在.vscode文件夹里面写程序

json可以写到一起,像这样

// 这是gdb与python两个launch.json的结合示例
{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(gdb) Launch",
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${fileDirname}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "miDebuggerPath": "gdb.exe",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description": "Set Disassembly Flavor to Intel",
                    "text": "-gdb-set disassembly-flavor intel",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "C/C++: gcc.exe build active file"
        }, // 一个逗号代表上面的配置结束,下面是新的配置
        {
            "name": "Python: Current File",
            "type": "debugpy",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal",
            "cwd": "${fileDirname}",
            "args": [],
            "env": {},
            "justMyCode": true
        } // 配置结束,如果还需要加配置就在此加上逗号然后继续往下写

    ]
}

下面配置编译环境的时候会列出示例的json文件
记得自己把里面的绝对路径替换一下,还有记得把注释也删一下

C/C++ 运行/编译环境配置 (通过msys2)

首先打开 MSYS2 官网,下载msys2并安装

vscode简易指南
指定安装的路径。一般在这个文件夹中寻找编译器

安装完后打开ucrt64或mingw64,运行下面的命令

pacman -Suy
pacman -S mingw-w64-ucrt-x86_64-gcc
pacman -S mingw-w64-ucrt-x86_64-gdb

若遇上 [Y/n] ,并且要你输入,输入y即可

之后进入设置 → 系统信息 → 高级系统设置 → 环境变量
Windows10的话是设置 → 系统 → 关于 → 系统信息 → 高级系统设置 → 环境变量
把编译器所处路径加入系统变量Path
一般路径和我一样就行,如果你在 msys2 安装的时候是无脑点Next的

vscode简易指南

完成后,打开 VS Code ,安装C/C++ Extension Pack插件,随后会自动安装相应组件

vscode简易指南

随后重启 VS Code ,新建文件,写入以下测试代码并按下F5或者页面上方的调试按钮来编译并运行

vscode简易指南
调试按钮
// C++示例文件 tesp.cpp
#include <iostream>
int main() {
    std::cout << "Hallo, Word";
    return 0;
}
// C示例文件 tesc.c
#include <stdio.h>
int main() {
    printf("Hwllo, Owlds");
    return 0;
}

一般情况下,会弹出一个选单让你选择编译器,选择第一个GDB,然后选择g++.exe。编译完后点击TERMINAL或按下 Ctrl + ` 跳转至终端

vscode简易指南
vscode简易指南
vscode简易指南

如果仅需要编译而不运行文件可以按Ctrl + Shift + B

如果想要多文件编程,可以通过修改tasks.json文件,或者使用#include “文件名”的方式
示例文件

// main.cpp
#include <iostream>
#include <vector>
using namespace std;

// 声明其他文件中的函数
vector<int> arraytovectorplussort(int arr[], int size);
void print_vector(vector<int> vec);

int main() {
    int a[] = {1, 8, 0, 2, 4};
    int size = sizeof(a) / sizeof(a[0]);  // 计算数组大小
    print_vector(arraytovectorplussort(a, size));
    return 0;
}
// vector.cpp
#include <vector>
#include <algorithm>
using namespace std;

vector<int> arraytovectorplussort(int arr[], int size) {
    vector<int> vec;
    for (int i = 0; i < size; i++) {
        vec.push_back(arr[i]);
    }
    sort(vec.begin(), vec.end());
    return vec;
}
// print_r.cpp
#include <iostream>
#include <vector>
using namespace std;

void print_vector(vector<int> vec) {
    for (int i = 0; i < vec.size(); i++) {
        cout << vec[i] << " ";
    }
}

将有关文件保存到相同文件夹之后,修改tasks.json文件,把所有文件名挤在args里的-g和-o中间,然后在任意一个文件中开始编译即可
注意,此时编译只会涉及写入tasks.json的文件,无论在哪个文件中启动
通过把-g和-o中间改回"${file}"即可恢复以前在哪个文件编译哪个文件的模式
若无tasks.json文件,可通过直接开始编译的方式生成一个。此时肯定会有报错,忽略即可

vscode简易指南

如果使用#include “文件名”的方式进行多文件编程,需要在main.cpp头部加上include字段,无需更改tasks.json

#include "print_r.cpp"
#include "vector.cpp"

随后在main.cpp中开始编译即可,注意此时不能在其他子文件中进行编译

vscode简易指南

如果 VS Code 没有正确检测出系统安装的编译器,可以手动创建.vscode文件夹,自己写入tasks.json配置
但是建议先检查一下Path是否正确设置或gdb是否正常安装
下面会列出一些常用的.vscode配置文件,仅tasks.json必要,其他可选

下面是一份 tasks.json 示例文件,以g++作为编译器

{
    "version": "2.0.0",
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: g++.exe build active file", // 任务名称,建议取唯一的名字

            // 这个需要自行替换为自己电脑上g++或者gcc的绝对路径,我也不知道干嘛的
            "command": "C:\\com\\g++.exe",  

            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe"
            ], // 编译字段,如果有引用其他的库可以修改,默认不需要改动
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "compiler: g++.exe"  // 任务详情,可以随便写
        }
    ]
}

下面是 launch.json 的示例文件,非必须,也是放在.vscode文件夹中

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(gdb) Launch", // 运行名称,这个会显示在debug窗口
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${fileDirname}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",

            // 这个需要自行替换为自己电脑上gdb的绝对路径,用于指定调试程序
            "miDebuggerPath": "C:\\com\\gdb.exe", 

            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description": "Set Disassembly Flavor to Intel",
                    "text": "-gdb-set disassembly-flavor intel",
                    "ignoreFailures": true
                }
            ],
            // 下面指定前置任务名称,修改为与上面tasks.json的"label"相同
            // 意思是启动调试程序前先运行指定任务编译代码
            "preLaunchTask": "C/C++: g++.exe build active file"  
        }

    ]
}

下面是一份 c_cpp_properties.json 示例文件,非必须,也是放在.vscode文件夹中

{
    "configurations": [
        {
            "name": "Win32",
            "includePath": [
                "${workspaceFolder}/**"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "_UNICODE"
            ],

            // 这个用于指定编译器,需要自行替换为自己电脑上g++或者gcc的绝对路径
            "compilerPath": "C:\\com\\g++.exe",  

            "cStandard": "c17",
            "cppStandard": "gnu++17",
            "intelliSenseMode": "windows-gcc-x64"
        }
    ],
    "version": 4
}

如果你使用gcc.exe作为编译器,要注意其只能编译C而不能编译C++
遇见这种情况只需要把gcc修改为g++即可,g++也可编译C程序
改的时候记得改全,不要只改一个文件

Python 运行环境配置

前往 Download Python | Python.org 下载Python
然后前往 VS Code 安装下面的插件

vscode简易指南

随后重启 VS Code
创建一个.py文件并贴上下面的代码,随后按下F5
选择Python Debugger → Python File(Python 文件)
若编译时需要加上其他字段也可以选择那项with Arguments(带有参数的)

// Python示例文件 text.py
print("Hello, Wldsaworld!")
vscode简易指南
vscode简易指南
vscode简易指南
vscode简易指南

虽说不会自动生成.vscode文件夹,py也有对应的.vscode配置文件,同样给出示例

launch.json

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python: Current File",
            "type": "debugpy",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal",
            "cwd": "${fileDirname}",
            "args": [],
            "env": {},
            "justMyCode": true
        }

    ]
}

Footnote

  • 文件路径中最好不要有中文和全角符号,可能造成编译/运行报错
  • 如果遇到编译时意外终止,退出代码为-1,同时终端提示Permission Denied的时候,请先手动删除之前编译的exe文件再尝试编译

正文完
有想法?微信我!
post-qrcode
 0
Rocosteve
版权声明:原创文章,由 Rocosteve 于2025-10-28发表,共计6335字。
转载说明:除特殊说明外本站原创文章皆由CC BY-SA 4.0协议发布,转载请注明来源并以相同协议授权有关新作品。