欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Ubuntu16.04下配置VScode的C/C++開發(fā)環(huán)境

 更新時間:2020年03月29日 10:22:55   作者:WavenZ  
這篇文章主要介紹了Ubuntu16.04下配置VScode的C/C++開發(fā)環(huán)境的教程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

1. Vscode安裝

Visual studio code是微軟發(fā)布的一個運行于 Mac OS X、Windows和 Linux 之上的,針對于編寫現(xiàn)代 Web 和云應(yīng)用的跨平臺源代碼編輯器。第一種方式是從VScode官網(wǎng)下載.deb文件,然后雙擊該文件會打開軟件中心進行安裝。

另一種方式是通過Terminal進行安裝,首先輸入下面三條語句安裝umake

sudo add-apt-repository ppa:ubuntu-desktop/ubuntu-make sudo apt-get update sudo apt-get install ubuntu-make

然后通過umake來安裝VScode:

umake web visual-studio-code

安裝完畢后即可打開VScode,主界面如下:

2. Vscode環(huán)境配置

(1)安裝c/c++插件

首先通過左邊欄的Extension欄目安裝C++插件,操作如下圖:

(2)建立工程

由于VScode是以文件夾的形式管理工程的,因此我們首先新建一個文件夾,我這里取名叫hello。

 

然后通過VScode打開此文件夾:

 

新建main.cpp文件并輸入程序:

(3)更改配置文件(launch.json)

點擊左側(cè)的Debug按鈕,選擇添加配置(Add configuration),然后選擇C++(GDB/LLDB),將自動生成launch.json文件,具體操作如下:

 

生成的默認(rèn)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": "enter program name, for example ${workspaceFolder}/a.out",
  "args": [],
  "stopAtEntry": false,
  "cwd": "${workspaceFolder}",
  "environment": [],
  "externalConsole": true,
  "MIMode": "gdb",
  "setupCommands": [
  {
   "description": "Enable pretty-printing for gdb",
   "text": "-enable-pretty-printing",
   "ignoreFailures": true
  }
  ]
 }
 ]
}

注意:這里需要將program項的內(nèi)容改為調(diào)試時運行的程序,將其改為main.out即可。具體更改如下:

 "program": "enter program name, for example ${workspaceFolder}/a.out",

改為

"program": "${workspaceFolder}/main.out",

該語句指的是當(dāng)前工作文件夾下的main.out文件,更改完畢的launch.json文件見附錄。

(4)添加構(gòu)建(編譯、鏈接等)任務(wù)(tasks.json)

為了方便在VScode里編譯C++代碼,我們可以將類似g++ -g main.cpp等g++命令寫入VScode的任務(wù)系統(tǒng)。首先,利用快捷鍵ctrl+shift+p打開命令行,輸入Tasks: Run task,會出現(xiàn)如下提示:

No task to run found. configure tasks...

回車,然后依次選擇如下:

Create tasks.json file from template

Others Example to run an arbitrary external command.

生成默認(rèn)的tasks.json文件如下:

{
 // See https://go.microsoft.com/fwlink/?LinkId=733558
 // for the documentation about the tasks.json format
 "version": "2.0.0",
 "tasks": [
 {
  "label": "echo",
  "type": "shell",
  "command": "echo Hello"
 }
 ]
}

這里的label為任務(wù)名,我們將”label"= "echo"改為”label"= "build"。由于我們的指令是g++,這里將”command“=”echo Hello“改為”command“=”g++“。然后添加g++的參數(shù)args。如果我們的g++指令為:g++ -g main.cpp,這里可以把參數(shù)設(shè)置為如下:

{
 "tasks": [
 {
  "label": "build",
  "type": "shell",
  "command": "g++",
  "args": ["-g", "${file}"]
 }
 ]
}

如果我們想配置g++指令為:g++ -g main.cpp -std=c++11 -o main.out,則參數(shù)可設(shè)置為:

{
 "tasks": [
 {
  "label": "build",
  "type": "shell",
  "command": "g++",
  "args": ["-g", "${file}", "-std=c++11", "-o", "${fileBasenameNoExtension}.out"]
 }
 ]
}

我們可以通過舉一反三來配置不同的g++指令。完整的tasks.json文件可參考附錄。

(5)簡單斷點調(diào)試

經(jīng)過上述配置之后就可以對我們寫的程序進行簡單的配置。在進行下面的操作前,我們應(yīng)當(dāng)保證launch.jsontasks.json的正確性并且已經(jīng)成功保存。

使用快捷鍵ctrl+shift+p調(diào)出命令行,選擇執(zhí)行我們的build任務(wù),build成功后,點擊開始調(diào)試。具體操作如下:

值得注意的是,這里如果每次更改了程序需要重新build,然后再進行調(diào)試;如果直接進行調(diào)試則運行的是上次build的結(jié)果。通過在launc.json作如下更改可以使得每次調(diào)試之前會自動進行build

 

這里在launch.json文件中添加了”preLaunchTask“=”build",也就是添加一個launch之間的任務(wù),任務(wù)名為build,這個build就是我們在tasks.json中設(shè)置的任務(wù)名。

3.總結(jié)及注意事項

本文對Ubuntu16.04系統(tǒng)下配置基于VScode的C/C++開發(fā)環(huán)境進行了簡單的介紹,主要步驟為:

1.安裝VScode,可以通過在官網(wǎng)下載和命令行的方式進行安裝。(順便提一下,在命令行安裝的過程中可能會讓你輸入a)

2.新建C/C++工程,VScode以文件夾為管理工程的方式,因此需要建立一個文件夾來保存工程。

3.配置launch.json文件,它是一個啟動配置文件。需要進行修改地方的是指定運行的文件,其次我們還可以在里面添加build任務(wù)。

4.配置tasks.json文件,這個文件用來方便用戶自定義任務(wù),我們可以通過這個文件來添加g++/gcc或者是make命令,方便我們編譯程序。

5.上述四個流程完了之后我們就可以進行基礎(chǔ)的C/C++開發(fā)與調(diào)試了。

4. 附錄

這里給出一個較完整的配置文件和任務(wù)文件,筆者的系統(tǒng)的Ubuntu16.04 LTS,測試時間是2018/11/14。由于版本不同可能會有所變化,因此該配置僅供參考!

(1)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}/${fileBasenameNoExtension}.out",
  "args": [],
  "stopAtEntry": false,
  "cwd": "${workspaceFolder}",
  "environment": [],
  "externalConsole": true,
  "MIMode": "gdb",
  "preLaunchTask": "build",
  "setupCommands": [
  {
   "description": "Enable pretty-printing for gdb",
   "text": "-enable-pretty-printing",
   "ignoreFailures": true
  }
  ]
 }
 ]
}

(2)tasks.json

{
 // See https://go.microsoft.com/fwlink/?LinkId=733558
 // for the documentation about the tasks.json format
 "version": "2.0.0",
 "tasks": [
 {
  "label": "build",
  "type": "shell",
  "command": "g++",
  "args": ["-g", "${file}", "-std=c++11", "-o", "${fileBasenameNoExtension}.out"]
 }
 ]
}

總結(jié)

到此這篇關(guān)于Ubuntu16.04下配置VScode的C/C++開發(fā)環(huán)境的文章就介紹到這了,更多相關(guān)Ubuntu16.04下配置VScode的C/C++開發(fā)環(huán)境內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C++簡明圖解this指針的使用

    C++簡明圖解this指針的使用

    this 指針在C++類和對象中是個很方便實用的關(guān)鍵字,可以簡化對象成員屬性的調(diào)用,使代碼表達的含義更加準(zhǔn)確;在之前的學(xué)習(xí)中我們都可以判斷變量所占內(nèi)存空間大小,那么我們創(chuàng)建的類對象所占的內(nèi)存空間怎么計算呢?想知道this的妙用和類對象占用的內(nèi)存空間就來跟我學(xué)習(xí)吧
    2022-06-06
  • 一文詳解C++模板和泛型編程

    一文詳解C++模板和泛型編程

    這篇文章主要為為大家為大家詳細(xì)的介紹了C++模板和泛型編程使用,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-05-05
  • c++動態(tài)內(nèi)存管理與智能指針的相關(guān)知識點

    c++動態(tài)內(nèi)存管理與智能指針的相關(guān)知識點

    為了更容易同時也更安全地使用動態(tài)內(nèi)存,新的標(biāo)準(zhǔn)庫提供了兩種智能指針(smart pointer)類型來管理對象,下面這篇文章主要給大家介紹了關(guān)于c++動態(tài)內(nèi)存管理與智能指針的相關(guān)知識點,需要的朋友可以參考下
    2022-03-03
  • C語言中十六進制轉(zhuǎn)十進制兩種實現(xiàn)方法

    C語言中十六進制轉(zhuǎn)十進制兩種實現(xiàn)方法

    這篇文章主要介紹了C語言中十六進制轉(zhuǎn)十進制兩種實現(xiàn)方法的相關(guān)資料,需要的朋友可以參考下
    2017-01-01
  • C++關(guān)于引用(reference)的代碼案例

    C++關(guān)于引用(reference)的代碼案例

    引用是C++中的一種重要特性,它可以讓代碼更加高效、簡潔和易讀,本文將深入探討引用的相關(guān)知識,包括引用的概念、使用方法、優(yōu)點和注意事項等。建議根據(jù)給出的代碼案例練一下,熟悉即可
    2023-05-05
  • C++?OpenCV實現(xiàn)之實現(xiàn)紅綠燈識別

    C++?OpenCV實現(xiàn)之實現(xiàn)紅綠燈識別

    本文以實現(xiàn)行車過程當(dāng)中的紅綠燈識別為目標(biāo),核心的內(nèi)容包括:OpenCV輪廓識別原理以及OpenCV紅綠燈識別的實現(xiàn)具體步驟,感興趣的可以了解一下
    2022-08-08
  • C++可變參數(shù)函數(shù)的實現(xiàn)方法示例

    C++可變參數(shù)函數(shù)的實現(xiàn)方法示例

    這篇文章主要給大家介紹了關(guān)于C++可變參數(shù)函數(shù)的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • 基于QT繪制一個漂亮的預(yù)警儀表

    基于QT繪制一個漂亮的預(yù)警儀表

    這篇文章主要為大家詳細(xì)介紹了如何基于QT繪制一個漂亮的預(yù)警儀表,文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價值,感興趣的可以了解一下
    2023-04-04
  • 用C/C++代碼檢測ip能否ping通(配合awk和system可以做到批量檢測)

    用C/C++代碼檢測ip能否ping通(配合awk和system可以做到批量檢測)

    今天小編就為大家分享一篇關(guān)于用C/C++代碼檢測ip能否ping通(配合awk和system可以做到批量檢測),小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-04-04
  • 深入分析Linux下如何對C語言進行編程

    深入分析Linux下如何對C語言進行編程

    本篇文章介紹了,如何在Linux下對C語言進行編程的詳細(xì)概述。需要的朋友參考下
    2013-05-05

最新評論