• Vscode LinuxC++环境配置


    C++环境配置

    一、Visual Studio Code相关信息

    • Visual Studio Code 下载地址:https://code.visualstudio.com/download
    • VS Code建议安装插件列表:
      • 中文菜单:
        • MS-CEINTL.vscode-language-pack-zh-hans
      • SSH远程开发:
        • ms-vscode-remote.remote-ssh
        • ms-vscode-remote.remote-ssh-edit
        • ms-vscode.remote-explorer
      • C++开发
        • ms-vscode.cpptools
      • python开发
        • ms-python.python
      • 代码补全
        • TabNine.tabnine-vscode
        • GitHub.copilot
    • VS Code SSH远程连接Ubuntu主机
      • 本地Ubuntu示例
      • autoDL示例:
        • autoDL地址:https://www.autodl.com/home
        • 省钱妙招:无卡启动

    二、Python开发环境配置

    • 建议conda虚拟环境
    • 测试代码main.py
    # python 代码测试
    
    # 计算 1+2+3+4+5 的和
    sum = 0;
    for i in range(5):
        sum += i
    
    # 打印结果
    print(sum);
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • debuger配置.vscodelaunch.json添加
    {
        // 使用 IntelliSense 了解相关属性。 
        // 悬停以查看现有属性的描述。
        // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
        "version": "0.2.0",
        "configurations": [
            {
                "name": "Python: Current File",
                "type": "python",
                "request": "launch",
                // "program": "${file}", // 当前文件
                "program": "main.py", // 指定文件
                "console": "integratedTerminal",
                "justMyCode": true // false表示可以进入第三方库(如Pytorch)里进行调试
            }
        ]
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

    三、C++ 开发环境配置

    • 测试代码main.cpp
    #include 
    using namespace std;
    
    int main(){
        
        // 计算 1+2+3+4+5
        int sum {0};
        for (int i {0}; i < 5; i++){
            sum += i;
        }
        // 输出结果
        cout << sum << endl;
        return 0;
        
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 先用g++ main.cpp -o main生成可执行文件
    • 再用VS Code 菜单:终端-运行生成任务生成可执行文件,需要在.vscode先添加tasks.json

    Linux中可以使用which g++确定g++的路径

    {
    	"version": "2.0.0",
    	"tasks": [
    		{
    			"type": "cppbuild",
    			"label": "C/C++: g++ 生成活动文件",
    			"command": "/usr/bin/g++", // g++的路径
    			"args": [
    				"-fdiagnostics-color=always", // 颜色
    				"-g",  // 调试信息
    				"-Wall", // 开启所有警告
    				"-std=c++14", // c++14标准
    				"${file}", // 文件本身,仅适用于C++基础知识教学,无法同时编译所有文件
    				// "${fileDirname}/*.cpp", // 文件所在的文件夹路径下所有cpp文件
    				"-o", // 输出
    				"${workspaceFolder}/release/${fileBasenameNoExtension}" // 文件所在的文件夹路径/release/当前文件的文件名,不带后缀
    			],
    			"options": {
    				"cwd": "${fileDirname}" // 文件所在的文件夹路径
    			},
    			"problemMatcher": [
    				"$gcc"
    			],
    			"group": {
    				"kind": "build",
    				"isDefault": true
    			},
    			"detail": "编译器: /usr/bin/g++"
    		}
    	]
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 需要debuger,launch.json修改为:
    {
        // 使用 IntelliSense 了解相关属性。 
        // 悬停以查看现有属性的描述。
        // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
        "version": "0.2.0",
        "configurations": [
            {
                "name": "(gdb) 启动",
                "type": "cppdbg", // C++调试
                "request": "launch",
                "program": "${workspaceFolder}/release/${fileBasenameNoExtension}",  // 文件所在的文件夹路径/release/当前文件的文件名,不带后缀
                "args": [],
                "stopAtEntry": false,
                "cwd": "${fileDirname}", // 文件所在的文件夹路径
                "environment": [],
                "externalConsole": false,
                "MIMode": "gdb",
                "setupCommands": [
                    {
                        "description": "为 gdb 启用整齐打印",
                        "text": "-enable-pretty-printing",
                        "ignoreFailures": true
                    },
                    {
                        "description":  "将反汇编风格设置为 Intel",
                        "text": "-gdb-set disassembly-flavor intel",
                        "ignoreFailures": true
                    }
                ],
                "preLaunchTask": "C/C++: g++ 生成活动文件" // tasks.json的label
            },
            {
                "name": "Python: Current File",
                "type": "python",
                "request": "launch",
                "program": "${file}", // 当前文件
                // "program": "demo.py", // 指定文件
                "console": "integratedTerminal",
                "justMyCode": true // false表示可以进入第三方库(如Pytorch)里进行调试
            }
        ]
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42

    四、第一个C++程序

    #include 
    
    int main(){
        int favorites_num;
        std::cout << "请输入0~10中你最喜欢的数字:" ;
        std::cin >> favorites_num;
        std::cout << favorites_num << "也是我喜欢的数字!" << std::endl;
      	return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    五、附录:vs code 中变量解释

    以:/home/Coding/Test/.vscode/tasks.json 为例
    
    ${workspaceFolder} :表示当前workspace文件夹路径,也即/home/Coding/Test
    
    ${workspaceRootFolderName}:表示workspace的文件夹名,也即Test
    
    ${file}:文件自身的绝对路径,也即/home/Coding/Test/.vscode/tasks.json
    
    ${relativeFile}:文件在workspace中的路径,也即.vscode/tasks.json
    
    ${fileBasenameNoExtension}:当前文件的文件名,不带后缀,也即tasks
    
    ${fileBasename}:当前文件的文件名,tasks.json
    
    ${fileDirname}:文件所在的文件夹路径,也即/home/Coding/Test/.vscode
    
    ${fileExtname}:当前文件的后缀,也即.json
    
    ${lineNumber}:当前文件光标所在的行号
    
    ${env:PATH}:系统中的环境变量
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
  • 相关阅读:
    你可能不知道的HTML小技巧 面试题小技巧
    vue:生命周期函数总结
    【功能实现】登录模块 - 学习/实践
    【GIT版本控制】--远程仓库
    34. Fabric2.2 证书目录里各文件作用
    Revit中有序地命名很眼花?那你是不知道『视图命名』
    分面中添加直线
    工厂3d模拟展示虚拟漫游彰显企业实力和竞争力
    osgearth3.2加载地球
    JSP指令,JSP九大内置对象
  • 原文地址:https://blog.csdn.net/weixin_42917352/article/details/134178101