IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> vscode 远程开发c/c++ -> 正文阅读

[C++知识库]vscode 远程开发c/c++

vscode 远程开发c/c++

简介

c/c++或嵌入式开发,往往需要在linux环境下开发。在windows下,除了用vmware/vbox安装linux虚拟机外,还可以安装wsl1/wsl2。wsl全名windows的linux子系统,其中wsl1只是改写了api,在windows内核上套了一层linux shell,因此很多内核相关的开发做不了。而wsl2则完全支持linux内核,但较为臃肿。孰优孰劣,还是根据需求来,应用开发,不涉及内核相关的,尽管用wsl1。

VS Code是微软出品的一款免费开源的现代化轻量级代码编辑器,支持几乎所有主流的开发语言的语法高亮、智能代码补全、自定义热键、括号匹配、代码片段、代码对比 Diff、Git等特性,支持插件扩展,并针对网页开发和云端应用开发做了优化。

本文将介绍vs code + wsl1环境对c/c++的开发调试(已装好wsl)。

远程连接

  1. 安装remote - wsl插件

  1. 点击左下角><符合,连接wsl

  1. 连接之后,就可以打开wsl下的目录进行远程编码,丝滑流畅

编译调试

配置如何构建,和如何执行程序

在文件根目录下的.vscode文件中,产生launch.json和tasks.json两个配置文件。其中,tasks.json用于配置构建过程,launch.json用于执行程序的相关配置。

写个简单的单文件或几个文件的程序,直接简单修改tasks.jon还挺方便的。若是硕大的项目工程,往往都是由makefile或cmake等方式构建,不如直接切换到terminal,直接执行个make,更方便且符合习惯。

{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: gcc build active file",
            "command": "/usr/bin/gcc",				// 编译工具
            "args": [													// 编译参数
                "-g",
                "${file}",
                "-o",
                "${fileDirname}/${fileBasenameNoExtension}"
            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "Task generated by Debugger."
        }
    ],
    "version": "2.0.0"
}

直接make之后,生成目标文件。

本例生成的可执行文件同main函数所在文件名相同,可切换到可执行文件的同名c的文件,按F5键或点击start debuging,启动调试。

{
    // 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": "gcc - Build and debug active file",
            "type": "cppdbg",
            "request": "launch",
            //"program": "${fileDirname}/${fileBasenameNoExtension}",   <-- 修改实际可执行文件路径,程序名同文件名
            "program": "${workspaceFolder}/bin/${fileBasenameNoExtension}",
            "args": [],
            //"stopAtEntry": false, <-- 习惯,启动的时候break在main函数,然后可继续加断点
            "stopAtEntry": true,
            "cwd": "${fileDirname}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            //"preLaunchTask": "C/C++: gcc build active file",      // <== makefile编译的,直接debug运行,不做构建了
            "miDebuggerPath": "/usr/bin/gdb"
        }
    ]
}

条件断点

vs code 支持条件断点,通过设置一个表达式/或计算hit断点的次数,当程序运行到满足条件下,才会break。调试重复执行的代码特有用。

方法是,右击一个断点,编辑断点,输入表达式或计数,回车生效,断点也随之变为黄点。

最后

如果,你的代码在ssh连接的服务器上,用remote-ssh插件,一样可以进行上述调试过程。以前,用vim+ctags+各种vim插件开发,虽然挺能装逼的,但效率差的太远。

其他,资源管理器中输入\wsl$,可以打开linux的文件目录。

参考:

Using C++ and WSL in VS Code

Debug C++ in Visual Studio Code

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-08-04 11:00:48  更:2021-08-04 11:02:47 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/9 23:09:50-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码