日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

    歡迎訪問 生活随笔!

    生活随笔

    當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

    生活经验

    C++ 笔记(01)— 环境设置(安装g++、g++ 编译 C++、 生成可执行文件流程、解释器与编译器区别)

    發布時間:2023/11/27 生活经验 43 豆豆
    生活随笔 收集整理的這篇文章主要介紹了 C++ 笔记(01)— 环境设置(安装g++、g++ 编译 C++、 生成可执行文件流程、解释器与编译器区别) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

    1. g++安裝

    Linux 或者 UNIX 系統上,可以通過下面命令來查看是否安裝了 GCC

    $ g++ -v
    

    如果已經安裝 GNU 編譯器,則有以下輸出:

    wohu@wohu:~/C++$ g++ -v
    Using built-in specs.
    COLLECT_GCC=g++
    COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper
    Target: x86_64-linux-gnu
    Configured with: ../src/configure -v --with-pkgversion='Ubuntu 5.4.0-6ubuntu1~16.04.10' --with-bugurl=file:///usr/share/doc/gcc-5/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-5 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-5-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-5-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-5-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
    Thread model: posix
    gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.10) 
    wohu@wohu:~/C++$ 
    

    如果沒有安裝,在 Ubuntu 系統下使用 apt 命令可以直接安裝:

    $ sudo apt-get install g++
    

    2. g++使用

    2.1 g++ 編譯 C++

    程序 g++ 是將 gcc 默認語言設為 C++ 的一個特殊的版本,鏈接時它自動使用 C++ 標準庫而不用 C 標準庫。

    下面是一個保存在文件 main.cpp 中一個簡單的 C++ 程序的代碼:

    #include <iostream>
    using namespace std;
    int main()
    {cout << "Hello, world!" << endl;return 0;
    }
    

    最簡單的編譯方式:

    $ g++ main.cpp
    

    由于命令行中未指定可執行程序的文件名,編譯器采用默認的 a.out 。程序可以這樣來運行:

    $ ./a.out
    Hello, world!
    

    通常我們使用 -o 選項指定可執行程序的文件名,以下實例生成一個 main 的可執行文件:

    $ g++ main.cpp -o main
    

    執行 main 應用程序

    $ ./main
    Hello, world!
    

    2.2 gcc 編譯 C++

    通過遵循源碼的命名規范并指定對應庫的名字,用 gcc 來編譯鏈接 C++ 程序是可行的,使用下面命令:

    $ gcc main.cpp -lstdc++ -o main
    

    3. 生成可執行文件流程

    1. 使用編輯器編寫 C++ 代碼;
    2. 使用 C++ 編譯器對代碼進行編譯,將代碼轉換為包含在目標文件中的機器語言版本;
    3. 使用鏈接器鏈接編譯器的輸出,生成一個可執行文件(如Windows 中的.exe 文件);


    在編譯過程中, C++ 代碼(通常包含在 .cpp 文本文件中)被轉換為處理器能夠執行的字節碼。編譯器每次轉換一個代碼文件,生成一個擴展名為 .o.obj 的目標文件,并忽略這個 cpp 文件可能對其他文件中代碼的依賴。

    解析這些依存關系的工作由鏈接程序負責,如果鏈接成功,則創建一個可執行文件,供程序員執行和分發。整個過程也被稱為構建可執行文件。

    總結整體過程為: 編寫 -> 編譯 -> 鏈接 -> 執行

    4. 解釋器與編譯器區別

    • 解釋器是一種對代碼(或字節碼)進行解釋并執行相應操作的工具;
    • 編譯器將代碼作為輸入,并生成目標文件;

    C++ 而言,編譯和鏈接后,將得到一個可執行文件,處理器可直接執行它,而無需做進一步解釋。

    編譯器將 C++ 代碼文件作為輸入,并生成一個使用機器語言的目標文件。通常,您的代碼依賴于庫和其他代碼文件中的函數。鏈接器負責建立這些鏈接,并生成一個可執行文件,它集成了您指定的所有直接或間接依存關系。

    總結

    以上是生活随笔為你收集整理的C++ 笔记(01)— 环境设置(安装g++、g++ 编译 C++、 生成可执行文件流程、解释器与编译器区别)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 成人国产精品免费观看动漫 | 黄网在线观看免费 | 污污内射久久一区二区欧美日韩 | 美女被男人桶出白浆喷水 | 日本精品在线 | 狠狠躁天天躁综合网 | 国产成人无码精品久久久久 | 午夜色网 | 国产91精品久久久久久久网曝门 | www视频在线观看免费 | 啪啪免费视频网站 | 无码国精品一区二区免费蜜桃 | 女人被男人躁得好爽免费视频 | 99国产精品久久久久 | 一区二区啪啪啪 | 精品黑人一区二区三区在线观看 | 国产亚洲成av人片在线观看桃 | 中文字幕一区二区人妻视频 | 欧美浪妇xxxx高跟鞋交 | 狠狠躁夜夜躁xxxxaaaa | 99精品人妻国产毛片 | 日韩精品小视频 | 涩天堂| 国产免费久久精品国产传媒 | 日本3级网站 | 97伊人| 精品一区二区久久久 | 亚洲激情网| 美乳人妻一区二区三区 | 波多野结衣黄色片 | 中文字幕――色哟哟 | 毛片毛多水多 | 麻豆乱淫一区二区三区 | 极品少妇网站 | 丰满人妻一区二区三区53视频 | 无码一区二区三区免费 | 欧美成人猛片aaaaaaa | 中国无码人妻丰满熟妇啪啪软件 | 欧美性jizz18性欧美 | 欧美一级免费黄色片 | 国产精品亚洲欧美 | 99免费视频 | 91美女片黄| 99精品国产一区二区 | 毛片基地免费观看 | www欧美视频| 美女扒开尿口让男人捅爽 | 中文精品无码中文字幕无码专区 | 国产精品av在线免费观看 | 91福利视频免费观看 | 欧美日韩a级 | 大乳女喂男人吃奶 | 欧美成综合 | 97无码精品人妻 | 与子敌伦刺激对白播放的优点 | 欧美卡一卡二卡三 | 精品久久久久久久久久久国产字幕 | sao浪受的饥渴日常 91免费入口 | 亚洲男人天堂2017 | 国内精品久久久久久久久久 | av免费一区 | 成人天堂av | 伊人资源 | wwwxxx黄色 | 波多野结衣办公室双飞 | 国产精品美女一区二区 | 久操热 | 中文字幕av高清 | 国产精品无码一区二区三区 | 亚洲成人精品一区 | 二区国产| 视频在线观看你懂的 | 国产高清二区 | 中文字幕1区2区 | 夜夜爽天天干 | 中文无码一区二区三区在线观看 | 九色视频网站 | 国产精品av在线免费观看 | 嫩草视频国产 | 亚洲国产精品视频一区二区 | 天天干国产 | 欧美有码在线观看 | 成人啪啪18免费游戏链接 | 国产中文字幕三区 | 插插影视| 亚洲女人的天堂 | 日本精品一区 | 91在线视频免费观看 | 午夜激情在线视频 | 青青草综合视频 | 欧美日韩小视频 | 色窝网 | 精品一区二区三区四区 | 成人国产视频在线观看 | 色呦呦网站在线观看 | 男男做爰猛烈叫床爽爽小说 | 欧洲做受高潮欧美裸体艺术 | 精品1卡二卡三卡四卡老狼 日韩三级网 | 日日做夜夜爽毛片麻豆 |