成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

挑把趁手的兵器 | VSCode配置C/C++學習環境

開發 開發工具
擁有一套自己精心配置的編程工具,可以幫助計算機新人更快地走進代碼的世界,提高對編程、對學業的興趣。

本文經自動駕駛之心公眾號授權轉載,轉載請聯系出處。

很多大學的計算機專業用的入門語言都是C語言,通常老師會給學生指定一款IDE來進行程序的編寫,比如vc++6.0、Code::Blocks、Dev c++,可是這些IDE大都比較老舊,用起來有很多不順暢的地方,而且界面粗糙,一點都沒有印象中程序員該有的那種炫酷的感覺,所以尋找一款現代化的、功能強大的編輯器/IDE對于一些人來說還是很有必要的。

也許有人說這些IDE開箱即用,不需要額外配置,對于什么都還不了解的新人來說很合適。我認為這是有道理的,但不應當妨礙一個有好奇心和折騰欲的學生去嘗試其他的編程工具,我個人認為愛折騰對計算機專業的學生來說是一項可貴的品質,折騰工具、搭建環境的過程中可以學到很多有用的東西,這是與計算機交流的過程,也是每一個進入代碼世界的人的必經之路,只是要學會克制,不要把時間全花在折騰工具和環境上。

擁有一套自己精心配置的編程工具,可以幫助計算機新人更快地走進代碼的世界,提高對編程、對學業的興趣。

目前網上有大量的關于vscode的文章和教程,但我沒有找到一篇細致的、面向小白的、搭建語言學習環境而非實際開發環境的教程,很多教程只是寫了怎樣配置,卻沒有寫為什么要這樣配置,我自己搞清楚其中種種后決定記錄下來。

為什么是VSCode?

VSCode是微軟出品的輕量級編輯器,定位是文本編輯器,開源,免費,海量插件,外觀出色,簡潔流暢,支持眾多編程語言,支持三大操作系統Windows、Linux、MacOS。總之,這是一款足夠強大和優雅的編輯器,你值得擁有

與VScode(Visual Studio Code)名字相像的VS(Visual Studio)是微軟的IDE,而VScode是編輯器,兩者定位不同,一個藍色一個紫色,不要搞混了。
我的環境是windows10, linux和mac os可能不適用,但如果你是小白的話,我認為其中很多內容還是很有參考意義的
本文以C語言為例,C++同理,涉及到不同的地方有標注

讓我們開始這場vscode的配置之旅

Step 0 基本概念

小白之所以是小白,就在于很多東西不知道、不了解、沒見過、沒用過,在你配置編程工具的過程中,你會遇到很多課本里沒有、老師課上沒說的東西、概念,這也是為什么很多人說配置vscode太麻煩了的原因,這種時候,善用搜索引擎,遇到不懂的東西、沒見過的名詞,上網查一下,大概了解一下是什么再接著往下看就行了。

在這篇文章中,我會盡量解釋清楚每個對你來說可能陌生的東西,不過仍然有可能會有你不明白的地方,網上查一下就好。

最一開始,你應當了解如下概念:

  • 編程是怎樣的一個過程:

首先用文本編輯器編寫源代碼 -> 編譯源代碼 生成目標代碼-> 將目標代碼與其它代碼(如庫函數代碼、標準啟動代碼)鏈接起來 -> 生成可執行代碼

  • 區分編輯器、編譯器、IDE:

編輯器就是處理文本(源碼)的程序,寫代碼寫的就是文本,編輯器可能提供智能提示、代碼高亮等輔助功能,但不負責源碼到二進制文件的操作;

編譯器就是負責將源碼文本翻譯成計算機能夠理解和執行的二進制文件的程序;

集成開發環境(IDE,Integrated Development Environment )是用于提供程序開發環境的應用程序,包括了代碼編輯器、編譯器、調試器和圖形用戶界面工具。集成了代碼編寫、分析、編譯、調試等一整套工具鏈。

  • 什么是搭建環境:

vscode定位代碼編輯器,不是IDE,不包含編譯功能,因此需要我們自己安裝編譯器、調試器等編譯器套件,并使兩者有效的配合起來,以實現快捷操作。把這一整套工具鏈整合到一起的過程就是我們所說的搭建環境。

ok,到這里,我們就清楚要做什么了:獲取編輯器 -> 獲取編譯套裝(編譯器、調試器、頭文件庫等) -> 做好兩者之間的溝通工作(配置文件)

Step 1 下載安裝

兩個東西:編輯器和編譯套裝

編輯器就是我們的vscode了,到官網

Visual Studio Code - Code Editing. Redefined code.visualstudio.com/

下載安裝:

雙擊打開下載好的程序進行安裝,安裝到默認位置或者你自定義的位置,安裝過程中注意這個界面:

這幾個選項建議全部勾上。

然后是編譯套裝

編譯工具我們選用gcc(全稱GNU Compiler Collection 意思是GNU編譯器套件),不過不是原版的gcc,而是它在Windows下的特制版MinGW(全稱Minimalist GNU on Windows)。它實際上是將GCC 移植到了 Windows 平臺下,并且包含了 Win32API ,因此可以將源代碼編譯為可在 Windows 中運行的可執行程序。而且還可以使用一些 Windows 不具備的,Linux平臺下的開發工具。MinGW又分為MinGW-w64 與 MinGW ,區別在于 MinGW 只能編譯生成32位可執行程序,而 MinGW-w64 則可以編譯生成 64位 或 32位 可執行程序。MinGW 現已被 MinGW-w64 所取代,且 MinGW 也已停止了更新。

因此,我們最終下載安裝的是MinGW-w64

下載地址:

mingw-w64 sourceforge.net/projects/mingw-w64/files/
進去后往下滑,找到這個:

下載下來后是一個壓縮文件,將它解壓縮(解壓縮軟件推薦Bandizip)得到mingw64文件夾,然后把它拖動到一個合適的位置(或者直接解壓縮到這個位置),地址中不要有中文,推薦C:\Program Files

你可以打開bin目錄看下,里面有很多后綴名是.exe 的可執行程序,這些就是開發時所需的工具,如:gcc.exe 是C語言程序的編譯器,g++.exe 是C++語言的編譯器,gdb.exe 是用來調試程序的 debug 工具。

還有一些頭文件也里面,如stdio.h的位置是C:\Program Files\mingw64\x86_64-w64-mingw32\include

然后,為了讓程序能訪問到這些編譯程序,需要把它們所在的目錄(我這里是C:\Program File\mingw64\bin,點擊地址欄進行復制)添加到環境變量Path中

環境變量是 Windows 系統中用來指定運行環境的一些參數,它包含了關于系統及當前登錄用戶的環境信息字符串。當用戶運行某些程序時,系統除了會在當前文件夾中尋找某些文件外,還會到環境參數的默認路徑中去查找程序運行時所需要的系統文件。

用windows的搜索功能(快捷鍵是Windows徽標鍵+S)搜索環境變量

打開它

然后一路確定回去。

現在驗證一下,搜索打開cmd命令提示符,輸入gcc --version(中間有空格),按回車,看到如下信息 :

圖片

說明gcc安裝成功。

現在重啟一下電腦。

好了,我們的電腦里已經有了這兩個東西了,他們是從不同的地方下載的,安裝的位置也不同,目前兩者之間還沒有任何聯系,接下來,我們應該去搭建起他們之間的橋梁了,不過別著急,咱們先來了解一下文件結構。

Step 2 文件結構

文件結構就是你組織文件夾、文件,決定他們怎樣嵌套、怎樣從屬的方法。

這一步是區分搭建的是語言學習環境還是實際項目開發環境的關鍵。

這兩者有什么區別呢?想想你寫hello world時是怎樣寫的,你寫了一個單文件,只有一個.c文件,然后你按下綠色三角進行編譯運行生成.exe可執行文件,語言學習環境大都是這樣的單文件編譯運行調試,或者是涉及到簡單的幾個頭文件和源文件的組合這樣的多文件結構。而實際項目開發呢,實際中的一個小項目的目錄結構可能長這樣:

我們的語言學習環境不是這樣的,我們用不到lib、build、makefile等文件夾/文件,我們的目錄結構應當方便我們新建一個單文件,然后編譯調試,這些文件還應當在一起以方便查看和管理

具體怎么操作:

建議把代碼都組織在一個地方,以方便管理。以我為例,我在C盤根目錄建了一個名叫Codefield的文件夾,我所有代碼相關的東西都組織在這里面。

現在,打開文件資源管理器,找一個合適的地方,創建一個這樣的Codefield文件夾(文件夾的名字你也可以改成別的,注意路徑中不要出現中文和空格,因為gcc調試器不支持中文路徑),然后在這個文件夾下再新建一個文件夾CODE_C,你所有的c語言代碼就放在這里面,由于vscode以文件夾組織項目,而我們涉及到單文件和簡單的多文件兩種情景,所以在CODE_C下再新建兩個文件夾C_Single 和 C_Multiple ,這兩個就是我們的工作區文件夾了。

圖片

今后,涉及到其他代碼相關的東西時,你就可以在Codefield文件夾下組織了,比如再學一門C++語言時,建一個CODE_Cpp文件夾;玩leetcode刷算法的時候,建一個Leetcode文件夾;從github克隆別人的項目時,建一個Github文件夾;自己做項目時,建個Projects文件夾……

現在,讓我們看一下工作區文件夾,以C_Single為例,這其中的文件結構又該怎么組織?(這一步你不需要建文件,弄明白結構就好)首先要有一個.vscode文件夾(這是vscode的配置文件所在處,下一步會詳細講),然后就是我們的源文件,在學習過程中,通常會寫很多的源文件,把他們全堆在一起顯然不夠優雅,我們對這些源文件進行一下分類,比如按章節分:

或者按類型分:

具體怎么分可以看你的學習情況。還有一個問題,源碼編譯后會生成exe可執行文件,它們放在哪里?和源文件放在一起的話,當文件夾下文件多起來時會非常雜亂,因此我們選擇把exe文件統一放在bin文件夾下,這個bin文件夾不應當直接放在工作區文件夾下,這樣會造成不同的源碼分類文件夾下的文件都不能重名,于是我們在每一個分類文件夾下都建一個bin文件夾,最終效果如下:

exercise目錄下有個bin目錄,hello.c在exercise下

C_Mutile類似但有所不同,由于一組程序由多個文件構成,我們把這C_Single中的單個源文件替換成文件夾就好,每個文件夾里面就是一組源文件,并且exe文件也放在其中,不需要單獨的bin目錄。

至此,你有了一個合適的文件結構,我們可以開始進行 vscode 的配置了。

Step 3 vscode配置文件

這一步開始前,我們再來了解幾個概念。

命令行:命令行 或 命令行界面,是一種基于文本的用來查看、處理、和操作計算機上的文件和程序的工具。

終端/控制臺:普通用戶可以簡單的把終端和控制臺理解為:可以輸入命令行并顯示程序運行過程中的信息以及程序運行結果的窗口。 不必要嚴格區分這兩者的差別。

shell:終端自身并不執行用戶輸入的命令,它只是負責把輸入的內容傳送到主機系統,并把主機系統返回的結果呈現給用戶。負責解釋執行用戶輸入的命令并返回結果的,正是Shell,它是溝通用戶和系統內核的中間橋梁。

現在思考一個問題,我們搭的這套環境中編輯器選的是vscode,但理論上任何能處理文本的編輯器都能用來寫代碼,比如Windows自帶的記事本,你可以在桌面新建一個txt文件,命名為hello,然后用記事本寫個helloworld程序進去,再把這個文件后綴改成.c,這就是一個源代碼文件了,我們該如何對它進行編譯運行呢?答案是通過命令行,我們已經安裝了編譯器套裝并把它添加進了環境變量,現在可以使用gcc命令了:搜索打開cmd命令提示符,默認進入的是用戶目錄,輸入cd desktop 進入桌面目錄,像這樣:

圖片

然后輸入編譯命令 gcc -o hello hello.c(注意空格),按下回車,你會發現桌面多了hello.exe文件,這說明我們成功編譯生成了可執行文件,然后再在命令行中輸入hello.exe運行程序 。

這樣每次都用命令行太麻煩了,我們希望用更快捷的方式執行這一過程,但記事本不是專門給你寫代碼的,它不能提供這樣的配置,但是vscode就不一樣了,專門寫代碼的編輯器當然有專門的方式讓你快捷地編譯運行。這是通過.vscode文件夾下的json配置文件實現的,這些json文件怎么寫是由vscode開發團隊規定的(感興趣可以去看官方的文檔),其中一個是tasks.json,task是任務的意思,我們的編譯和運行就是我們想要vscode執行的任務,為此我們要在tasks.json里寫兩個task:BuildRun(這里為什么不是Compile呢?是因為從源碼到可執行的過程中不僅是編譯(Compile),還有預編譯、鏈接等過程,用 構建(Build) 來表述更合適)。除了編譯和運行,我們還需要進行**調試(Debug)**,這個就不是通過task來實現的了,而是通過launch.json文件來實現。

現在,打開vscode,發現全是英文,我們先裝個漢化插件:

然后搜索C/C++安裝這個插件,這是對語言的支持插件

重啟vscode,打開C_Single文件夾:

注意要 文件->打開文件夾 這樣打開,vscode中打開的根目錄是C_Single

然后新建.vscode文件夾(注意前面有個.),然后在里面新建tasks.jsonlaunch.json

打開的根目錄是C_Single

下面是這兩個文件的具體內容,帶有詳細注釋,你要大致看一遍,看不太懂沒關系。復制粘貼到你的文件里,注意里面有一些路徑之類的東西需要你進行修改,還有一點是這里的配置和上一步中提到的工作區下的文件結構是嚴格一致的,必須那樣組織文件。

tasks.json

{
    "version": "2.0.0",
    "tasks": [
        {//這個大括號里是‘構建(build)’任務
            "label": "build", //任務名稱,可以更改,不過不建議改
            "type": "shell", //任務類型,process是vsc把預定義變量和轉義解析后直接全部傳給command;shell相當于先打開shell再輸入命令,所以args還會經過shell再解析一遍
            "command": "gcc", //編譯命令,這里是gcc,編譯c++的話換成g++
            "args": [    //方括號里是傳給gcc命令的一系列參數,用于實現一些功能
                "${file}", //指定要編譯的是當前文件
                "-o", //指定輸出文件的路徑和名稱
                "${fileDirname}\\bin\\${fileBasenameNoExtension}.exe", //承接上一步的-o,讓可執行文件輸出到源碼文件所在的文件夾下的bin文件夾內,并且讓它的名字和源碼文件相同
                "-g", //生成和調試有關的信息
                "-Wall", // 開啟額外警告
                "-static-libgcc",  // 靜態鏈接libgcc
                "-fexec-charset=GBK", // 生成的程序使用GBK編碼,不加這一條會導致Win下輸出中文亂碼
                "-std=c11", // 語言標準,可根據自己的需要進行修改,寫c++要換成c++的語言標準,比如c++11
            ],
            "group": {  //group表示‘組’,我們可以有很多的task,然后把他們放在一個‘組’里
                "kind": "build",//表示這一組任務類型是構建
                "isDefault": true//表示這個任務是當前這組任務中的默認任務
            },
            "presentation": { //執行這個任務時的一些其他設定
                "echo": true,//表示在執行任務時在終端要有輸出
                "reveal": "always", //執行任務時是否跳轉到終端面板,可以為always,silent,never
                "focus": false, //設為true后可以使執行task時焦點聚集在終端,但對編譯來說,設為true沒有意義,因為運行的時候才涉及到輸入
                "panel": "new" //每次執行這個task時都新建一個終端面板,也可以設置為shared,共用一個面板,不過那樣會出現‘任務將被終端重用’的提示,比較煩人
            },
            "problemMatcher": "$gcc" //捕捉編譯時編譯器在終端里顯示的報錯信息,將其顯示在vscode的‘問題’面板里
        },
        {//這個大括號里是‘運行(run)’任務,一些設置與上面的構建任務性質相同
            "label": "run", 
            "type": "shell", 
            "dependsOn": "build", //任務依賴,因為要運行必須先構建,所以執行這個任務前必須先執行build任務,
            "command": "${fileDirname}\\bin\\${fileBasenameNoExtension}.exe", //執行exe文件,只需要指定這個exe文件在哪里就好
            "group": {
                "kind": "test", //這一組是‘測試’組,將run任務放在test組里方便我們用快捷鍵執行
                "isDefault": true
            },
            "presentation": {
                "echo": true,
                "reveal": "always",
                "focus": true, //這個就設置為true了,運行任務后將焦點聚集到終端,方便進行輸入
                "panel": "new"
            }
        }

    ]
}

launch.json

{
    "version": "0.2.0",  
    "configurations": [  
        {//這個大括號里是我們的‘調試(Debug)’配置  
            "name": "Debug", // 配置名稱  
            "type": "cppdbg", // 配置類型,cppdbg對應cpptools提供的調試功能;可以認為此處只能是cppdbg
            "request": "launch", // 請求配置類型,可以為launch(啟動)或attach(附加)
            "program": "${fileDirname}\\bin\\${fileBasenameNoExtension}.exe", // 將要進行調試的程序的路徑
            "args": [], // 程序調試時傳遞給程序的命令行參數,這里設為空即可
            "stopAtEntry": false, // 設為true時程序將暫停在程序入口處,相當于在main上打斷點
            "cwd": "${fileDirname}", // 調試程序時的工作目錄,此處為源碼文件所在目錄
            "environment": [], // 環境變量,這里設為空即可
            "externalConsole": false, // 為true時使用單獨的cmd窗口,跳出小黑框;設為false則是用vscode的內置終端,建議用內置終端
            "internalConsoleOptions": "neverOpen", // 如果不設為neverOpen,調試時會跳到“調試控制臺”選項卡,新手調試用不到
            "MIMode": "gdb", // 指定連接的調試器,gdb是minGW中的調試程序
            "miDebuggerPath": "C:\\Program Files\\mingw64\\bin\\gdb.exe", // 指定調試器所在路徑,如果你的minGW裝在別的地方,則要改成你自己的路徑,注意間隔是\\
            "preLaunchTask": "build" // 調試開始前執行的任務,我們在調試前要編譯構建。與tasks.json的label相對應,名字要一樣
    }]
}

到這里,差不多就已經成功了,讓我們寫個簡單的hello程序來試一下編譯、運行、調試:

首先在C_Single下新建一個exercise文件夾,來組織源碼文件,在exercise下新建hello.c文件,然后在exercise下建一個bin文件夾(注意從屬關系,不要建錯了,在vscode中想在某個目錄下新建文件/文件夾要先點擊一下該目錄,再點擊新建按鈕),hello.c中輸入如下代碼:

#include <stdio.h>
int main()
{
    char name[10];
    printf("Input your name: ");
    scanf("%s",name);
    printf("Hello,%s,this is your vscode!\n",name);
    return 0;
}

寫好后ctrl+s保存,進行如下操作:

  • 僅編譯(構建),用快捷鍵ctrl+shift+B,你會發現終端面板打開了,顯示如下:

圖片

沒有報錯,bin文件夾下多了hello.exe,編譯成功!

  • 編譯(構建)+運行,測試任務默認沒有快捷鍵,我們自己綁定一個:點擊左下角小齒輪->鍵盤快捷方式->搜索任務->找到運行測試任務,點擊左側加號添加鍵綁定,這里我們設為F4

然后回到我們的hello程序頁面,按下F4,顯示如下:

圖片

輸入你的名字,按下回車,運行成功!

  • 接下來是調試(vscode的調試功能非常直觀易用,你會愛上它的),在第一個printf處打上斷點(點擊行號前面的小紅點,或者用快捷鍵F9),然后打開左側的運行面板,點擊綠色小三角開始調試(或者直接用調試快捷鍵F5)

然后會出現調試工具欄,各按鈕功能如圖:

左側可以查看、監控變量

我們使用單步調試按鈕,快捷鍵F11,單步向下執行程序,黃色箭頭所指示行是現在未執行、下一步將要執行的語句,當執行到輸入語句時,黃色箭頭會消失,這時你在終端面板內進行輸入,然后按回車,黃色箭頭重新出現,可以繼續向下執行。

調試成功!

今后就可以新建源文件寫程序,F4一鍵編譯運行,F5一鍵開始調試

有沒有很激動? ^o^/

可能出現的問題

  • 中文亂碼

亂碼問題是由于文件編碼格式引起的,vscode默認的編碼格式是UTF-8,而Windows的終端的默認編碼是GBK,這就造成了中文會顯示成亂碼,解決辦法是生成程序時指定用GBK,我們的task里已經指定了,所以理論上你不應該出現這個問題

  • 找不到頭文件

正確添加了環境變量的話,不應該出現這個問題

  • “終端將被任務重用,按任意鍵關閉終端”

按照我們在task中的設置,每次執行一個task就會打開一個新的終端面板,你可以在下拉列表查看自己打開的面板:

如果你把task的"panle"屬性改成了"shared",所有的任務都用的這一個終端,vscode會提醒你“終端將被任務重用”,這句話并不是報錯,只是提醒,你無視它就好,而且在設置里還可以關閉這句提醒。

關于code runner
你可能在很多其他人的教程里見過它,這是一個第三方的插件,用它也可以實現編譯運行,原理也是代替你手動輸入命令行,也需要一定的配置。不過我覺得按照我的方法已經能很簡單便捷地實現編譯運行調試了,沒必要再用這個插件。

簡單的多文件程序

我們已經搞定了C_Single,多文件的C_Multiple的設置也類似,只需要改一下那兩個配置文件涉及到路徑的部分,文件如下,你可以對比一下:

多文件tasks.json

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "build",
            "type": "shell",
            "command": "gcc", //寫c++換成g++
            "args": [
                "${fileDirname}\\*.c", //寫c++把 *.c 換成 *.cpp
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe",
                "-g",
                "-Wall", 
                "-static-libgcc",   
                "-fexec-charset=GBK",
                "-std=c11",  //寫c++換成c++標準
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "presentation": {
                "echo": true,
                "reveal": "always",
                "focus": false,
                "panel": "new"
            },
            "problemMatcher": "$gcc"
        },
        {
            "label": "run",
            "type": "shell",
            "dependsOn": "build",
            "command": "${fileDirname}\\${fileBasenameNoExtension}.exe",
            "group": {
                "kind": "test",
                "isDefault": true
            },
            "presentation": {
                "echo": true,
                "reveal": "always",
                "focus": true,
                "panel": "new"
            }
        }

    ]
}

多文件launch.json

{
    "version": "0.2.0",
    "configurations": [{
        "name": "Debug", 
        "type": "cppdbg", 
        "request": "launch",
        "program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
        "args": [],
        "stopAtEntry": false, 
        "cwd": "${fileDirname}", 
        "environment": [], 
        "externalConsole": false,
        "internalConsoleOptions": "neverOpen",
        "MIMode": "gdb", 
        "miDebuggerPath": "C:\\Program Files\\mingw64\\bin\\gdb.exe", 
        "preLaunchTask": "build" 
    }]
}

兩個文件夾有不同的配置,寫單文件時就打開C_Single,寫多文件時就打開C_Multiple,注意對應的文件結構。

有一點要注意,在寫多文件時,包含自己寫的頭文件要用雙引號,而不是尖括號,例如#include "myHeader.h",雙引號表示先在當前目錄下尋找頭文件。

你可以自己寫個簡單的多文件程序測試一下有沒有問題。

Step 4 更進一步

vscode的一大優點就在于插件生態豐富,通過插件可以擴展很多功能。這里推薦幾個:

  • one dark pro

主題插件,好像是下載量最多的主題插件,整體配色比較和諧。(vscode在顏值方面真的很能打)

  • Material Icon Theme

一套精心設計的圖標,可以讓你的文件/文件夾更有辨識度

  • Code Time

可以多維度的記錄你在vscode上花的時間,可以用這個插件記錄你碼代碼的時間,比如你可以定個類似每天編程2小時之類的目標,督促激勵自己學習編程。

  • Power Mode

這是一個炫酷的插件,可以給你敲代碼的過程添加特效,效果炸裂,具體操作可以看插件詳情頁。

還有其他很多有用有趣的插件,你可以看看別人的推薦帖。

另外vscode還有其他很多功能,比如快捷鍵、小地圖、搜索查找替換、代碼片段、集成git等等,你可以慢慢探索。

不過新手階段,注意不要把時間全花在這些折騰上,工具只是工具,好好學習才是更重要的事,不要舍本逐末。

結束語

我們的旅程結束了,幸運的話,你現在已經擁有了一個美妙的學習環境,你將vscode打磨成了一把趁手的兵器,它刀身優美、刀口鋒利,打開,猶如戰士拔刀對敵,關閉,猶如戰士收刀入鞘,你擁有了在代碼世界中劈荊斬棘的利刃,運用它、揮舞它吧。

原文鏈接:https://mp.weixin.qq.com/s/o5arkq0kTsob9j5w8QmAlA

責任編輯:張燕妮 來源: 自動駕駛之心
相關推薦

2021-06-02 08:13:28

VscodeVisual stduC++

2010-01-27 14:00:50

CC++運行環境

2020-12-07 10:42:22

VScodeC++

2022-12-30 17:12:42

開發c++調試

2009-06-05 14:54:09

EclipseC++環境搭建

2020-07-07 10:55:01

C++C語言代碼

2021-03-29 15:19:59

人工智能機器學習技術

2010-01-15 16:25:48

學習C++

2010-01-15 19:28:59

C++

2010-01-28 17:10:33

C++

2010-01-15 09:58:38

C++ Builder

2010-01-11 14:05:01

C++學習方法

2011-05-31 18:31:13

C++

2011-04-11 11:29:07

C++

2010-01-21 14:07:14

CC++聲明

2010-01-13 10:45:44

Visual C++

2021-04-11 10:48:37

UbuntuC++Linux

2022-04-18 12:29:18

C++

2010-01-26 10:01:17

學習C++

2010-01-21 09:34:57

C++語法
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美在线观看一区 | 美国av毛片 | 欧美一区二区三区精品 | 精品一区二区在线观看 | 国产精品夜间视频香蕉 | 色综合久久久久 | 国产伦一区二区三区 | 欧美一级免费看 | 亚洲成人精品 | 在线观看中文字幕视频 | 一区二区三 | 国产精品久久久久久久久久久久久久 | 91精品久久久久久久久久 | 色婷婷综合网站 | 成人自拍视频网站 | 国产在线观看 | 热re99久久精品国产99热 | 亚洲综合在线一区二区 | 欧美中文字幕在线观看 | 国产www在线 | 日韩精品免费看 | 精品视频一区二区 | 不卡一区二区三区四区 | 亚洲第一色av | 欧美成人在线影院 | 国产日韩精品一区二区三区 | 中文字幕一区二区三区四区 | 色射综合| 日韩一区二区三区四区五区 | 免费99视频| 亚洲精品久久久 | 成人免费视频久久 | 亚洲高清视频一区 | 91成人免费 | 日韩在线欧美 | 国产免费一区二区三区最新6 | 蜜桃av一区二区三区 | 中国黄色在线视频 | 中文字幕 国产精品 | 午夜激情小视频 | 久久视频精品 |