最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Visual?Studio?Code?配置C、C++?文件debug調(diào)試環(huán)境的詳細(xì)過(guò)程

 更新時(shí)間:2022年02月25日 08:21:22   作者:駱三瘋  
這篇文章主要介紹了Visual?Studio?Code?配置C、C++?文件debug調(diào)試環(huán)境,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

大家好我是SLF,在午休的時(shí)候給嵌入式軟件的同事,演示了一下如何用vscode調(diào)試應(yīng)用端的CPP程序,他之前一直用的是UltraEdit,同事被vscode的插件調(diào)試功能安利了一波,覺(jué)得挺好用的。晚上我抽了個(gè)時(shí)間,整了個(gè)文檔,希望也能幫助到大家。

vscode C/C++ Extension Pack 插件安裝

下載直接安裝 C/C++ Extension Pack 它包含了 vscode 編寫 C/C++ 工程需要的插件,和以前比不需要一個(gè)個(gè)找了。

vscode windows 端 debug 配置

windows 端編譯運(yùn)行C/C++的程序需要一套集成開(kāi)發(fā)環(huán)境,這里可以使用 MinGW https://nuwen.net/mingw.html ,選擇自己需要的安裝包安裝即可,我就直接用推薦的。

window MinGW 環(huán)境安裝

下載MinGW的安裝包,安裝即可(當(dāng)然如果電腦上裝著 Visual Studio,也可以用它的工具集配置環(huán)境)。

配置MinGW的bin目錄到系統(tǒng)環(huán)境變量。

命令行g(shù)cc -v、g++ -v 驗(yàn)證環(huán)境變量是否配置成功

windows 端 C、CPP 單文件 debug 調(diào)試

安裝好插件之后,先寫一個(gè)簡(jiǎn)單的 cpp 文件

#include <iostream>
using namespace std;

int main()
{
  int number = 100;
  cout << "hello world" << number << endl;
  return 0;
}

打個(gè)斷點(diǎn),直接運(yùn)行debug,可以讓編輯器自己去創(chuàng)建 lanch.json 和 task.json 配置文件

這里選擇C++(GDB/LLDB)、不要用C++(windows),debug運(yùn)行的是 windows 自帶的 cmd

下一步 選擇 g++.exe 如下截圖;

記住不要用 C++(WIndows) 選項(xiàng)的話,會(huì)調(diào)用的是操作系統(tǒng)的cmd運(yùn)行去運(yùn)行程序,無(wú)法在vscode中正常debug,嘗試了一下,截圖如下。

注意生成的.vscode目錄,其中配置文件 lanch.js 中的 preLaunchTask 值,需要和 tasks.json 中 的任務(wù)名稱保持一致。對(duì)于不同的操作系統(tǒng)可能的其他環(huán)境,可以進(jìn)行多任務(wù)配置。

C文件也可以調(diào)試。

我的windows端配置文件如下,大家可以參考。

// 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": "g++.exe - Build and debug active file",
? ? ? ? ? ? "type": "cppdbg",
? ? ? ? ? ? "request": "launch",
? ? ? ? ? ? "program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
? ? ? ? ? ? "args": [],
? ? ? ? ? ? "stopAtEntry": false,
? ? ? ? ? ? "cwd": "${fileDirname}",
? ? ? ? ? ? "environment": [],
? ? ? ? ? ? "externalConsole": false,
? ? ? ? ? ? "MIMode": "gdb",
? ? ? ? ? ? "miDebuggerPath": "D:\\MinGW\\bin\\gdb.exe",
? ? ? ? ? ? "setupCommands": [
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? "description": "Enable pretty-printing for gdb",
? ? ? ? ? ? ? ? ? ? "text": "-enable-pretty-printing",
? ? ? ? ? ? ? ? ? ? "ignoreFailures": true
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ],
? ? ? ? ? ? "preLaunchTask": "C/C++: g++.exe build active file"
? ? ? ? }
? ? ]
}
// tasks.json
{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: g++.exe build active file",
            "command": "D:\\MinGW\\bin\\g++.exe",
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe"
            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "Task generated by Debugger."
        }
    ],
    "version": "2.0.0"
}

代碼文件中文目錄文件名, 如何在 window 端正常調(diào)試

我是直接將 window 操作系統(tǒng)的編碼改成 UTF-8,測(cè)試有效,不過(guò)之前磁盤中的的一些不是UTF-8編碼的.txt 等文本文件,會(huì)有亂碼的情況。win10和win11系統(tǒng) UTF-8 的配置截圖如下。

win10

win11

重啟電腦后,就可以 debug 中文目錄的單文件了。

vscode ubuntu端 debug配置

我這里的系統(tǒng)是Ubuntu20.04 版本,類linux系統(tǒng)當(dāng)中配置vscode debug相對(duì)來(lái)說(shuō)比window端要簡(jiǎn)單的多。

ubuntu C、CPP單文件調(diào)試

創(chuàng)建文件目錄,寫個(gè)簡(jiǎn)單測(cè)試程序,點(diǎn)擊debug 按鈕,可以讓vscode 自己創(chuàng)建 launch.js 和 tasks.json
選擇 C++(GDB/LLDB),參考截圖如下

選擇 gcc - 生成和調(diào)試活動(dòng)文件,參考截圖如下

成功進(jìn)入斷點(diǎn)。

我的ubuntu端配置文件如下,大家可以參考。

// launch.js
{
    // 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 - 生成和調(diào)試活動(dòng)文件",
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}/${fileBasenameNoExtension}",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "為 gdb 啟用整齊打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "C/C++: gcc 生成活動(dòng)文件",
            "miDebuggerPath": "/usr/bin/gdb"
        }
    ]
}
// tasks.js
{

    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: gcc 生成活動(dòng)文件",
            "command": "/usr/bin/gcc",
            "args": [
                "-g",
                "${file}",
                "-o",
                "${fileDirname}/${fileBasenameNoExtension}"
            ],
            "options": {
                "cwd": "${workspaceFolder}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "調(diào)試器生成的任務(wù)。"
        }
    ],
    "version": "2.0.0"
}

中文目錄文件名, 在 ubuntu 端正常調(diào)試

在運(yùn)行,Ubuntu調(diào)式中文目錄,中文文件是沒(méi)有問(wèn)題的, locale 看一下當(dāng)前系統(tǒng)的語(yǔ)言編碼設(shè)置,默認(rèn)是 UTF-8。

如果不行,可以修改默認(rèn)配置 sudo vi /etc/default/locale,系統(tǒng)語(yǔ)言是中文,LANG="zh_CN.UTF-8",系統(tǒng)語(yǔ)言是英文的,LANG=“en_US.UTF-8”
完成修改之后可以, source /etc/default/locale 更新配置。截圖如下

官方文檔參考

vscode官方文檔當(dāng)中也有相關(guān)的配置,大家可以參考。https://code.visualstudio.com/docs/cpp/config-mingw

在這兒,特感謝大家觀看!如有不妥之處,還請(qǐng)大家批評(píng)指正,大家可以聯(lián)系我,或在下方評(píng)論,謝謝大家!

到此這篇關(guān)于Visual Studio Code 配置C、C++ 文件debug調(diào)試環(huán)境的文章就介紹到這了,更多相關(guān)Visual Studio Code 配置debug調(diào)試環(huán)境內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 基于Qt實(shí)現(xiàn)離線瓦片地圖下載器

    基于Qt實(shí)現(xiàn)離線瓦片地圖下載器

    這篇文章主要介紹了如何通過(guò)Qt實(shí)現(xiàn)離線瓦片地圖下載器,文中的示例代碼對(duì)我們學(xué)習(xí)或工作有一定的幫助,感興趣的可以跟隨小編一起學(xué)習(xí)一下
    2022-01-01
  • 基于linux下獲取時(shí)間函數(shù)的詳解

    基于linux下獲取時(shí)間函數(shù)的詳解

    本篇文章是對(duì)linux下獲取時(shí)間的函數(shù)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • C++ primer類的基礎(chǔ)精講

    C++ primer類的基礎(chǔ)精講

    C++類,是指系統(tǒng)在第一次在程序中遇到一個(gè)類時(shí)為這個(gè)類建立它的所有類變量的拷貝 - 這個(gè)類的所有實(shí)例共享它的類變量
    2022-07-07
  • VS2017中配置QT5.12.0的圖文教程

    VS2017中配置QT5.12.0的圖文教程

    本文主要介紹了VS2017中配置QT5.12.0的圖文教程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • C語(yǔ)言基礎(chǔ)之C語(yǔ)言格式化輸出函數(shù)printf詳解

    C語(yǔ)言基礎(chǔ)之C語(yǔ)言格式化輸出函數(shù)printf詳解

    這篇文章主要介紹了C語(yǔ)言格式化輸出函數(shù)printf詳解,printf函數(shù)中用到的格式字符與printf函數(shù)中用到的格式修飾符,感興趣的小伙伴可以借鑒一下
    2023-03-03
  • C++ 淺談emplace_back及使用誤區(qū)

    C++ 淺談emplace_back及使用誤區(qū)

    這篇文章主要介紹了C++ 淺談emplace_back及使用誤區(qū),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-12-12
  • Qt使用OpenGL實(shí)現(xiàn)繪制3D圖形

    Qt使用OpenGL實(shí)現(xiàn)繪制3D圖形

    OpenGL是一個(gè)跨平臺(tái)的、用來(lái)渲染3D圖形的標(biāo)準(zhǔn)API,Qt對(duì)OpenGL提供了強(qiáng)大的支持,所以本文就來(lái)和大家介紹一下Qt如何使用OpenGL實(shí)現(xiàn)繪制3D圖形吧
    2023-10-10
  • C 語(yǔ)言環(huán)境設(shè)置詳細(xì)講解

    C 語(yǔ)言環(huán)境設(shè)置詳細(xì)講解

    本文主要介紹C 語(yǔ)言環(huán)境設(shè)置,在不同的系統(tǒng)平臺(tái)上,C語(yǔ)言的環(huán)境設(shè)置不同,這里幫大家整理了Liunx, UNIX,Windows 上安裝C語(yǔ)言環(huán)境,有開(kāi)始學(xué)習(xí)C語(yǔ)言的朋友可以參考下
    2016-08-08
  • 淺談C語(yǔ)言之字符串處理函數(shù)

    淺談C語(yǔ)言之字符串處理函數(shù)

    下面小編就為大家?guī)?lái)一篇淺談C語(yǔ)言之字符串處理函數(shù)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-08-08
  • Opencv繪制最小外接矩形、最小外接圓

    Opencv繪制最小外接矩形、最小外接圓

    這篇文章主要為大家詳細(xì)介紹了Opencv繪制最小外接矩形、最小外接圓的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-05-05

最新評(píng)論

阿合奇县| 西安市| 建始县| 华亭县| 治县。| 瓦房店市| 吕梁市| 澄城县| 黄平县| 旌德县| 安达市| 积石山| 汝南县| 平山县| 抚顺市| 九寨沟县| 深圳市| 区。| 金山区| 尤溪县| 丹巴县| 惠州市| 桑日县| 抚宁县| 育儿| 东城区| 嘉义县| 晋中市| 临西县| 永川市| 镇坪县| 科尔| 修文县| 浙江省| 扶风县| 柞水县| 嵊州市| 关岭| 施甸县| 金湖县| 屯门区|