網(wǎng)友評分:
5.3分
GNU編譯器是一款非常強大并且好用的編程語言編譯器軟件,是一套以 GPL 及 LGPL許可證所發(fā)行的自由軟件,亦是自由的類Unix 及蘋果計算機 Mac OS X 操作系統(tǒng)的標準編譯器,它原本只能處理 C語言,但其很快地擴展,變得可處理 C++。之后也變得可處理 Fortran、Pascal、Objective-C、Java, 以及 Ada 與其他語言。
1、GNU編譯器以GPL及LGPL許可證所發(fā)行的自由軟件;
2、既能處理C語言,也能處理C++;
3、支持Fortran、Pascal、Objective-C、Java,以及Ada與其他語言;
4、gcc編譯器支持跨windows、mac、linux等平臺;
5、可以透支和保存文件;
6、可以解決一個共同的碰撞;
7、可以進行解析器的越界。
GNU的外部接口長得像一個標準的Unix編譯器。使用者在命令列下鍵入GNU之程序名,以及一些命令參數(shù),以便決定每個輸入檔案使用的個別語言編譯器,并為輸出程序碼使用適合此硬件平臺的組合語言編譯器,并且選擇性地執(zhí)行連接器以制造可執(zhí)行的程序。每個語言編譯器都是獨立程序,此程序可處理輸入的原始碼,并輸出組合語言碼。
全部的語言編譯器都擁有共通的中介架構:一個前端解析符合此語言的原始碼,并產(chǎn)生一抽象語法樹,以及一翻譯此語法樹成為GNU的暫存器轉(zhuǎn)換語言〈RTL〉的后端。編譯器最佳化與靜態(tài)程序碼解析技術(例如FORTIFY_SOURCE,一個試圖發(fā)現(xiàn)緩沖區(qū)溢位〈buffer overflow〉的編譯器)在此階段應用于程序碼上。最后,適用于此硬件架構的組合語言程序碼以Jack Davidson與Chris Fraser發(fā)明的算法產(chǎn)出。幾乎全部的GNU都由C寫成,除了Ada前端大部分以Ada寫成。
GNU所遵循的部分約定規(guī)則:
.c為后綴的文件,C語言源代碼文件;
.a為后綴的文件,是由目標文件構成的檔案庫文件;
.C,.cc或.cxx 為后綴的文件,是C++源代碼文件且必須要經(jīng)過預處理;
.h為后綴的文件,是程序所包含的頭文件;
.i 為后綴的文件,是C源代碼文件且不應該對其執(zhí)行預處理;
.ii為后綴的文件,是C++源代碼文件且不應該對其執(zhí)行預處理;
.m為后綴的文件,是Objective-C源代碼文件;
.mm為后綴的文件,是Objective-C++源代碼文件;
.o為后綴的文件,是編譯后的目標文件;
.s為后綴的文件,是匯編語言源代碼文件;
.S為后綴的文件,是經(jīng)過預編譯的匯編語言源代碼文件。
關于本站|下載幫助|下載聲明|軟件發(fā)布|聯(lián)系我們
Copyright ? 2005-2024 m.daaijiaoyu.cn.All rights reserved.
浙ICP備2024132706號-1 浙公網(wǎng)安備33038102330474號