d語言編譯
A. D語言與c語言誰更牛【普及率不包含在內】
D語言是由Digital Mars公司開發的編程語言,起因是為了改進C++。它與C二進制兼容(不完全),可編譯為本地碼,有GC也可手動管理內存,語法上借鑒多種語言,模板則在C++的基礎上做了相當大的擴充。D 語言既有 C 語言的強大威力,又有 python 和 Ruby 的開發效率。它是一種集垃圾回收、手工內存操作、契約式設計、高級模板技術、內嵌匯編、內置單元測試、Mixin 風格多繼承、類 java 包管理機制、內置同步機制、內建基本運行時信息的系統級編程語言。D語言簡介D 語言是一種通用的系統和應用編程語言。它是比 C++ 更高級的語言,同時還保持了生成高效代碼以及直接訪問操作系統API和硬體的能力。D 很適合於編寫從中等規模到那些由團隊合作完成、數百萬行代碼規模的各種程序。D 易於學習,為編程者提供了很多便利,並且適用各種野心勃勃的編譯器優化技術。 D 不是腳本語言,也不是一種解釋型語言。它不需要虛擬機、宗教、或者高於一切的哲學。它是給實際的編程者使用的實際的語言,它幫助編程者快速、可靠的完成易於維護、易於理解的代碼。 D 是數十年來實現多種語言編譯器的經驗的積累,是用那些語言構造大型工程的嘗試的積累。D 從那些語言(主要是 C++ )那裡獲得了靈感,並使用經驗和現實世界中的實用性來馴服它。為什麼需要D語言自從 C 語言被發明以來,軟體工業走過了一段很長的路。許多新的概念被加入了 C++ 中,但同時維護了同 C 的向後兼容性,包括兼容了原始設計中的所有的弱點。有很多修正這些弱點的嘗試,但是兼容性是最大的困擾。同時,C 和 C++ 都在不斷引入新的特性。這些新特性必須被小心的加入到現有的結構中,以免重寫舊的代碼。最終的結果十分復雜—— C 標准將近 500 頁,C++ 標准大概有 750 頁!C++ 實現起來既困難又代價高昂,造成的結果就是各種實現之間都有差別,因此很難寫出完全可以移植的 C++ 代碼。 C++ 程序員傾向於使用語言中的孤島來編程,也就是說,他們傾向於十分精通語言中的某個特性而避免使用其他特性。盡管代碼通常在編譯器之間是可移植的,但在程序員之間移植就不那麼容易了。C++ 的一個長處是它支持很多根本上不同的編程風格——但從長遠來看,互相重復和互相沖突的風格會給開發帶來妨礙。 C++ 在標准庫而不是語言核心中實現了可改變大小的數組和字元串拼接等。不在語言核心中實現這些功能造成了幾種不太理想的結果。 是否能把 C++ 的能力釋放、重新設計並重鑄到一門簡單、正交並實用的語言中呢? 這種語言是否能做到易於正確實現,並使編譯器有能力有效地生成高度優化的代碼呢? 現代編譯器技術已經取得了很大的進步,有些原來用作原始編譯技術的補充的語言特性已經可以被忽略了(一個這樣的例子是 C 語言中的『register』關鍵字,一個更為微妙的例子是 C 中的宏預處理程序)。我們可以依賴現代編譯器的優化技術而不是使用語言特性(如同原始的編譯器所做的那樣)來獲得可以接受的代碼質量。從C/C++保留而來的特徵粗看上去 D 就像 C 和 C++ 。這樣一來學習以及將代碼移植到 D 就很容易。從 C/C++ 轉向 D 應該很自然。程序員不必從頭學起。 使用 D 並不意味著程序員會如 Java 或者 Smalltalk 那樣被嚴格的限制在某一個運行時 vm (虛擬機)上。D 沒有虛擬機,編譯器直接生成可連接的目標文件。D 如同 C 那樣被直接連接到操作系統。通常那些你熟悉的工具如 make 同樣適用於 D 的開發。 D 將很大程度上保留 C/C++ 的 觀感 。它將使用相同的代數語法,絕大多數的相同表達式和語句形式,以及總體的結構。 D 程序既可以採用 C 風格的 函數和數據 範式,也可以採用 C++ 風格的 面向對象 範式,或者它們兩者的混合。 編譯/鏈接/調試 的開發模型將會被繼承下來,但是把 D 編譯成為位元組碼然後解釋執行也不會有任何問題。 異常處理 越來越多的使用經驗顯示,異常處理是比 C 傳統的「出錯代碼/全局errno變數」模型更為高級的錯誤處理模型。 運行時類型識別 C++ 部分地實現了這個功能,而 D 更進一步。對運行時類型識別的完全支持將使垃圾收集運行的更好,會使調試器的功能更強,會使對自動持久化的支持更好等等。 D 維持了同 C 調用慣例 的兼容。這樣就能夠使 D 程序直接訪問操作系統的 API 。程序員有關現有 API 和編程範例的知識和經驗可以繼續在使用 D 時使用而只需付出很少的努力。 運算符重載 D 支持對運算符的重載,這樣就可以用用戶定義的類型擴展由基本類型構成的類型系統。 模板 模板是實現范型編程的一種手段。其他的手段包括使用宏或者採用協變數據類型。使用宏已經過時了。協變類型很直接,但是低效且缺少類型檢查。C++ 模板的問題是它們太復雜,同語言的語法不和諧,還有各種各樣的類型轉換和重載規則,等等。D 提供了一種簡單得多的使用模板的方法。 RAII(資源獲得即初始化) RAII 技術是編寫可靠軟體的重要方法之一。 Down and dirty 編程 D 將保留 down-and-dirty 編程的能力,而不用採用別的語言編寫的外部模塊。在進行系統編程時,有時需要將一種指針轉換成另一種指針,或者使用匯編語言。D 的目標不是避免 down and dirty 編程,而是減少在進行普通程序設計時對它們的需要。廢棄的特徵對 C 的源碼級兼容性。保留對 C 的源碼級兼容的擴展已經有了(C++ 和 Objective-C)。在這方面的進一步工作受制於大量的遺留代碼,已經很難對這些代碼進行什麼重大的改進了。 對 C++ 的鏈接兼容性。C++ 的運行時對象模型太復雜了——如果要較好的支持它,基本上就是要求 D 編譯器變成一個完整的 C++ 編譯器了。C 預處理程序宏處理是一種擴展語言的簡單方法,它可以給語言加入某些語言本不支持的(對於符號調試器不可見的)特徵。條件編譯、使用 #include 分層的文本、宏、符號連接等,本質上構成了兩種難以區分兩種語言的融合體,而不是一種語言。更糟的是(或許是最好的),C 預處理程序是一種十分原始的宏語言。是停下來的時候了,看看預處理程序是用來做什麼的,並將這些功能直接設計到語言內部。多重繼承它是一種擁有飽受爭議的價值的復雜特徵。它很難用一種高效的方式實現,而且在編譯器實現它時很容易出現各種 bug 。幾乎所有的 MI 的功能都能夠通過使用單根繼承加介面和聚集的方式實現。而那些只有 MI 才能支持的功能並不能彌補它帶來的副作用。 現在調試成為了語言語法的一部分了。可以在編譯時決定是否使用這些代碼,再也不用使用宏或者預處理命令了。調試語法提供了一種持續的、可移植的、易於理解的識別調試代碼的方法,使程序員既能夠生成帶有調試代碼的二進製版本,也能夠生成沒有調試代碼的二進製版本D 對從同一份源碼生成多個版本的程序提供了內建的支持。它替代了 C 預處理程序的 #if/#endif 技術。
B. 什麼是D語言他用什麼編譯器,編譯器和D語言的教程在哪裡能下載到
delphi(版本很多,推薦用7.0)
網上很多地方都可以下載到
基本上比較老了,所以說它過時了,並非沒有道理的
C. D語言的介紹
D語言,一種通用計算機程序語言,威力強大、功能豐富,支持多種編程範式,例如面向對象。1D語言最初由Digital Mars公司就職的Walter Bright於2001年發布,意圖改進C++語言。目前最新D語言被簡稱為D2。最主要的D語言的實現是DMD。D 語言源自C/C++,借鑒了眾多編程語言的特色和現代編譯器技術,融會貫通了設計者豐富的實踐經驗,使之具備了非凡的威力--既有 C/C++ 語言的強大威力,又有 Python 和 Ruby 的開發效率。它集眾多系統級編程所需的功能於一身,例如垃圾回收、手工內存操作、契約式設計、高級模板技術、內嵌匯編、內置單元測試、Mixin 風格多繼承、類 Java 包管理機制、內置同步機制、內建基本運行時信息。
D. 請問集成C語言的強大功能和Python的高開發效率的編譯型語言除了Delphi和D語言外還有別的嗎
D不知道,delphi的pascal開發效率可以和python比?搞笑了吧?要和python比比開發效率,好歹得ruby,C#之流才可以。
C語言強大?只是速度強大罷了,功能上C能做到的哪個C++做不到?
不要鄙視java,虛擬機的強大你只是自己不知道罷了。
e語言?????。。。。。。
要說集合C和python的優點,用cython吧,編譯型的,兼顧C的執行效率和python的開發效率。python調用C的庫也是個辦法,要不找Go來湊活一下也可以。
E. C語言編譯程序的功能是(計算機二級考試題)
選D
編譯其實就是翻譯
把人看的 翻譯成機器看的。
其實 A已經算對了
不過 有D 這個更完善。
C程序不是單獨編譯的,還要加上系統庫。
F. codeblocks怎麼編譯
1、 下載 CodeBlocks.rar ,並把它解壓到當前系統分區中的某一根目錄下,比如F:\ ,注意:不要解壓到含有中文或空格的目錄中(尤其是不能解壓到桌面)!
2、進入「F:\codeblocks」目錄,並雙擊「codeblocks.exe」可執行文件,啟動它。
3、現在我們學習如何通過向導創建一個控制台應用,並且直接編譯、運行它。
步驟1:Code::Blocks主菜單「文件」→「新建」→「項目…」 彈出如下對話框中,開始「Console Application」。
(圖 1 開始「Console Application」向導)
步驟2:如果出現向導的「歡迎界面」,直接點擊下一步。
步驟3:出現用於選擇語言的對話框,選擇「C++」,下一步。
步驟4:出現選擇文件夾的對話框,在「項目標題」中輸入「HelloWorld」。兩單詞連寫,不包括雙引號。本步操作結果將會在「我的文檔」中「CodeBlocks Projects」目錄下,新建一個名稱為「HelloWorld」的目錄。
步驟5:出現編譯器選項對話框。在「編譯器」中選擇「GNU GCC Compiler」。其下則默認「Debug」與「Release」兩個編譯目標都是默認選中的,不必改變,通常我們都需要調試和發行兩個版本,就算是一個Hello Word的簡單程序。按下「完成」。
步驟6:必要時按下「Shift + F2」,出現「Management」側邊欄,如下圖:
(圖 8 項目管理器)
步驟7:雙擊上圖所示的main.cpp,將打開該文件。暫時我們還並不需要修改它。
步驟8:主菜單「構建」→「構建」。或者,用熱鍵Ctrl+F9,完成編譯。
步驟9:再按Ctrl + F10,運行。(9、10步也可以通過工具欄實現,請讀者自行熟悉)。下面是運行結果圖:
步驟10:其中「Hello world!」是我們程序的輸出。下面的內容是Code::Blocks為了方便我們調試而增加的內容(本來該程序運行後,就直接退出),包括顯示了程序運行用時,以及提示「按任意鍵退出」。
4、我們需要一款好的IDE,希望它不僅有助於我們學習C++,也應該是我們今後編寫C++應用程序時的上好工具。目前我推薦使用Code::Blocks,它除了具備IDE典型的集編輯、編譯、調試在一身的功能之外,還具備以下特點。
(1) 開源
開源不僅僅意味著免費,它還意味著更好的學習途徑。
(2)跨平台
包括Windows、Linux、Mac OS等。
(3)跨編譯器
包括gcc/g++、Visual C++、Borland C++、Intel C++等超過20多款編譯器。同時它也支持多種語言的編譯,包括D語言等(當然,Code::Blocks主要支持C++語言)。
(4)插件式框架
Code::Blocks採用開放體系,有著良好的功能擴展能力。
(5)採用C++寫成
無須安裝額外的,往往是龐大的運行環境。再者,一款C++的IDE採用C++寫成,這是最自然不過的事了。
(6)升級頻繁與維護良好
差不多每個月都有升級包,有時甚至數天就有新的升級包可供下載。另外其官方論壇也相對活躍,除了提出BUG以外,來自世界各地熱心維護者往往第一時間提供不同操作系統上的安裝包。
(7)內嵌可視化GUI設計
IDE的圖形界面,採用wxWidgets,同時也支持使用wxWidgets進行可視化圖形界面設計。
(8)支持多國語言
通過中文語言包,支持漢化界面上的絕大部分內容。
G. 語言編譯程序若按軟體分類屬於
答案應該選【B、應用軟體】
對於【A】:操作系統就是計算機系統,如:windows系列,DOS、OS/2、UNIX、XENIX、LINUX、Netware等;
對於【C】:系統軟體,其實就是計算機系統,指的就是操作系統之類的,作用是維持計算機的正常運行;
對於【D】:選項就更不正確了。
其實,編譯軟體是用於編譯代碼使用的,屬於應用軟體。從程序語言上來說,匯編程序應該是最早也是最成熟的系統軟體。
希望可以幫助你o(∩_∩)o
H. d語言是什麼
D語言是由Digital Mars公司開發的編程語言。D 語言既有 C 語言的強大威力,又有 Python 和 Ruby 的開發效率。它是一種集垃圾回收、C 語言應用程序二進制介面兼容、契約式設計、強力范型、內嵌匯編、內置單元測試、Mixin、類 Java 包管理機制、內置同步機制、內建基本運行時信息的系統級編程語言。初學者推薦學習 使用 1.0 系列最新版。
I. c語言編譯器是一種()
c語言編譯器是一種系統軟體。
C語言是一種結構化語言。它層次清晰,便於按模塊化方式組織程序,易於調試和維護。C語言的表現能力和處理能力極強。它不僅具有豐富的運算符和數據類型,便於實現各類復雜的數據結構。它還可以直接訪問內存的物理地址,進行位(bit)一級的操作。由於C語言實現了對硬體的編程操作,因此C語言集高級語言和低級語言的功能於一體。既可用於系統軟體的開發,也適合於應用軟體的開發。此外,C語言還具有效率高,可移植性強等特點。
(9)d語言編譯擴展閱讀:
最流行的C語言編譯器有以下幾種:
1、GNU Compiler Collection 或稱GCC
2、Microsoft C 或稱 MS C
3、Borland Turbo C 或稱 Turbo C
這些C語言版本不僅實現了ANSI C標准,而且在此基礎上各自作了一些擴充,使之更加方便、完美。
J. B語言可以寫C++,那麼Python作為C語言的變種,可否寫一門新的語言,如D語言
我覺得c++這種「中級語言」的本質不是某個編譯器,而是一套實現它語法的規則。另外,Python怎麼會是c++的變種呢?