1. C語言編譯器是什麼
C語言是一門面向過程的計算機編程語言,與C++、java等面向對象編程語言有所不同。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、僅產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。C語言描述問題比匯編語言迅速,工作量小、可讀性好,易於調試、修改和移植,而代碼質量與匯編語言相當。C語言一般只比匯編語言代碼生成的目標程序效率低10%~20%。因此,C語言可以編寫系統軟體。[2]
二十世紀八十年代,美國國家標准局為了避免各開發廠商用的C語言語法產生差異,給C語言制定了一套完整的美國國家標准語法,稱為ANSI C。作為C語言最初的標准。[3]2011年12月8日,國際標准化組織(ISO)和國際電工委員會(IEC)發布的C11標準是C語言的第三個官方標准,也是C語言的最新標准,該標准更好的支持了漢字函數名和漢字標識符,一定程度上實現了漢字編程。
C語言編譯器普遍存在於各種不同的操作系統中,例如Microsoft Windows, Mac OS X, linux, Unix等。C語言的設計影響了眾多後來的編程語言,例如C++、Objective-C、Java、C#等。
例:
#include <stdio.h>
int main() {
printf("Hello,world!");
return 0;
}
編譯運行將輸出: Hello,world!
2. 本科獨立用C語言完成沒有優化的C語言編譯器屬於什麼水平
我覺得水平還是很高的,但意義恐怕不大。編譯器技術是非常成熟的領域,而且由於應用場景的限
制實時,復雜的演算法已經自動出局了,你可選的東西是有限的。編譯器可能有很多實現的形
式,虛擬機/解釋器/靜態編譯器 等,也有成熟的開源實現。作為本科生,而非專門研究該分支的學生,應該合理分配自己學習的時間,如果做這個編譯器就干
掉了大半年,那計網和OS這些課程該咋辦?
我知道很多人會認為沒有做編譯器優化特指中段優化,不考慮機器碼上的優化比較劃水。但編
譯器優化是一個很復雜的東西:首先它和你用的IR表示有關而且是強烈耦合,SSA IR基本還
好,有開源代碼和文獻記載,你想要的都能在網上挖到但這怎麼體現你的水平是吧。你
要考慮編譯器的性能,盡管編譯器的後端優化基本上可以納入到某種PEabstract interpretation的
范疇中。
要不然你可以通過編寫插件的方式白嫖例如visual studio code這類軟
件的強大編輯功能,如果你寫的不是c compiler,你也可以盡量把語法設計得很像c,這樣你又能進一步
白嫖其強大的intellisense code,當然仍然有不少人或者應該說團隊達到了這一步,到這里,應該卷死
了99.99%的同行應該毫無問題。
3. 常見的C語言編譯器是什麼
目前最流行的C語言編譯器有以下幾種:
1、GNU Compiler Collection 或稱GCC
GCC(GNU Compiler Collection,GNU編譯器套件),是由 GNU 開發的編程語言編譯器。它是以GPL許可證所發行的自由軟體,也是 GNU計劃的關鍵部分。
GCC原本作為GNU操作系統的官方編譯器,現已被大多數類Unix操作系統(如Linux、BSD、Mac OS X等)採納為標準的編譯器,GCC同樣適用於微軟的Windows。GCC是自由軟體過程發展中的著名例子,由自由軟體基金會以GPL協議發布。
2、Microsoft C 或稱 MS C
Microsoft C 是c語言的一種IDE(集成開發環境),常見的還有Microsoft Visual C++,Borland C++,Watcom C++ ,Borland C++ ,Borland C++ Builder,Borland C++ 3.1 for DOS,Watcom C++ 11.0 for DOS,GNU DJGPP C++ ,Lccwin32 C Compiler 3.1,High C,Turbo C等等......
3、Borland Turbo C 或稱 Turbo C
Turbo C是美國Borland公司的產品,Borland公司是一家專門從事軟體開發、研製的大公司。該公司相繼推出了一套 Turbo系列軟體, 如Turbo BASIC, Turbo Pascal, Turbo Prolog, 這些軟體很受用戶歡迎。
(3)c語言大學教程編譯器擴展閱讀:
C編譯的整個過程很復雜,大致可以分為以下四個階段:
1、預處理階段在該階段主要完成對源代碼的預處理工作,主要包括對宏定義指令,頭文件包含指令,預定義指令和特殊字元的處理,如對宏定義的替換以及文件頭中所包含的文件中預定義代碼的替換等,總之這步主要完成一些替換工作,輸出是同源文件含義相同但內容不同的文件。
2、編譯、優化階段編譯就是將第一階段處理得到的文件通過詞法語法分析等轉換為匯編語言。優化包括對中間代碼的優化,如刪除公共表達式,循環優化等;和對目標代碼的生成進行的優化,如如何充分利用機器的寄存器存放有關變數的值,以減少內存訪問次數。
3、匯編階段將匯編語言翻譯成機器指令。
4、鏈接階段鏈接階段的主要工作是將有關的目標文件連接起來,即將在一個文件中引用的符號同該符號在另外一個文件中的定義連接起來,使得所有的目標文件成為一個能夠被操作系統裝入執行的統一整體。
4. 學C語言用什麼編譯器好
C-Free 還行,我就是用這個 寫C、C++程序 ,小巧,不到20M,真的不錯~~~~~~~
C-Free 5.0 專業版
C-Free是一款支持多種編譯器的專業化C/C++集成開發環境(IDE)。利用本軟體,使用者可以輕松地編輯、編譯、連接、運行、調試C/C++程序。C-Free中集成了C/C++代碼解析器,能夠實時解析代碼,並且在編寫的過程中給出智能的提示。C-Free提供了對目前業界主流C/C++編譯器的支持,你可以在C-Free中輕松切換編譯器。可定製的快捷鍵、外部工具以及外部幫助文檔,使你在編寫代碼時得心應手。完善的工程/工程組管理使你能夠方便的管理自己的代碼。
5. 新手學C語言用什麼編譯器比較好
1、 visual c++6.0 (win8系統下不好用,C/C++)-Microsoft Visual C++ ;
2、 visual studio (2005、2008、2010、2012、2013)- Microsoft Visual Studio ;
3、 win-tc非常方便:不騙你,2000/XP/7都可以用 ;
4、 Code::Blocks(win7、8都可以用);
5、 Turb C(只能編譯C語言) ;
6、 gcc (GNU編譯器套件) ;
7、 DEV C++;
8、 C-Free;
9、 Borland C++、WaTCom C++、Borland C++ Builder、GNU DJGPP C++、Lccwin32 C Compiler3.1、High C、My Tc等,由於C語言比較成熟,所以編程環境很多;
10、還常用souceinsight ,在工作中還用Labwindows編程,直接調試運行,不過那是有工程背景,有工作經驗的技術人員用的。
最好用第一個
6. 大家初學c語言用的編輯器和編譯器是怎麼下載安裝詳細步驟
1.Code::Blocks 是一個開放源碼的全功能的跨平台C/C++集成開發環境.
相比於基於Delphi的Dev-C++共享 C++IDE,Code::Blocks是開放源碼軟體Code::Blocks由純粹的C++語言開發完成,它使用了蓍名的圖形界面庫 wxWidgets(2.6.2unicode)版。對於追求完美的C++程序員,再也不必忍受Eclipse的緩慢,再也不必忍受VS.NET的龐大和高昂的價格。
2.安裝主要步驟
安裝Code::Blocks第一個正式版本 ver 8.02。
安裝Code::Blocks的最新升級包。
安裝Code::Blocks的簡體中文語言包。
完成Code::Blocks的基本配置。
3.運行安裝程序
下載得到一個執行的文件,雙擊後運行,請按照以下說明進行安裝。
選擇「Full/完整」安裝,以免重要插件沒有被安裝上。
安裝目標路徑,不要帶有空格,或者漢字;這一點並不是Code::Blocks的限制,而是因為mingw32里的一些命令行工具,似乎對長目錄或帶空格的目錄支持有點小問題,我估計漢字目錄也會出問題,但沒試過。一句話,就裝在根目錄下的x(AB,C,D):CodeBlocks即可。
4.安裝中文語言包
首先,請在 X:CodeBlocksshareCodeBlocks 建立一個子文件夾:locale,注意 locale 全為小寫字母。簡體漢字的語言包做了較大改進,不過仍然沒改完,另外,一些插件在當前版本本來就無法漢化的,所以還有一部分內容是英語的。
點擊下載d2school版Code::Blocks語言包。
下載後,請解壓到前述的locale目錄下,則locale目錄下,應出現zh_CN和zh_TW兩個子目錄。重新啟動Code::Blocks,點擊主菜單的「Settings」,選擇「Enviornment」。出現的對話框中,左邊選中「View」,右邊打勾「Internationalization (needs restart)」,並在後面的復合框中選中「Chinese (Simplified)」。確認退出本對話框。
5.必要配置
又分為兩步,第一步用於檢查系統環境變數,第二步用於檢查Code::Blocks本身的配置。事實上,這也是很多類似IDE軟體都需要做的准備工作之一。
雖然在多數情況下這兩樣配置在CodeBlocks安裝以後,就已經正確配置上了。但是如果這兩樣配置有誤,會帶來Code::Blocks運行時的很多奇怪的問題,我們還是直接檢查確保一下,同時加以了解。
檢查並配置操作系統環境變數
在桌面上,滑鼠右鍵點擊「我的電腦」,選擇彈出菜單中的「屬性」。在屬性對話框中,選中「高級」屬性頁。點擊其下「環境變數」按鈕,將新彈出一個對話框,如下圖,選中「系統變數」下的「PATH」一行。然後點擊其下「編輯」按鈕,再次彈出一個對話框。
全選,並復制(Ctrl + C)第二行的內容。然後打開寫字板程序,檢查以下內容是否出現在復制過來的文字中:
X:CodeBlocksMinGWin; X:.4.5;
其中「X:CodeBlocks」應為您本機安裝Code::Blocks時的路徑。
如果沒有,將所缺少的部分,錄入到配置內容,所插入位置最好微靠前一點,注意包括其中的分號。
修改完之後,別忘了復制修改後的全部內容,粘貼,替換一路「確定」,關掉各級對話框。
6.Code::Blocks全局編譯器設置
請大家首先到 X:CodeBlocksMinGWin下,搜索,檢查有沒有存在以下文件:
mingw32-gcc.exe —— 這是C的編譯器。
mingw32-g++.exe —— 這是C++的編譯器及動態庫的連接器。
ar.exe —— 這是靜態庫的連接器。
gdb.exe —— 這里調試器。
windres.exe —— windows下資源文件編譯器。
mingw32-make.exe —— 製作程序。
都沒有問題,請點擊c::b主菜單「設置」(漢化前的"Settings"),這次選中「編譯器和調試器設置...」。,出現的對話框中,右邊選中「全局編譯器設置」
7. c語言用什麼編譯器
c語言可以用的編譯器有很多,包括MicrosoftVisualC++、MyEclipse、TurboC和gcc編譯器等。8. c語言編譯器的選擇
關於C語言編譯器的選擇(Tc2.0,Tc3.0,Vc6.0等)
我們在學習C語言時通常會面臨C語言編譯器的選擇,事實上C語言編譯器可以分為C和C++兩大類,其中C++是C的超集,均向下支持C。主要的C語言編譯器及特點分別如下:
(1)TC 2.0DOS平台軟體。最經典的C語言編譯器,系統體積小,簡單易學,容易上手,而且很多前人或書籍的程序均基於該編譯器,是學習C語言的首選。不過它不支持滑鼠,但讀者如果掌握幾個快捷鍵,操作時對滑鼠可能就不怎麼需要了,如:F2 存檔 F3 打開程序 Alt+F3在最近打開的文件之間切換 Alt+F5觀察運行結果F9 編譯製作EXE Ctrl+F9編譯並運行Ctrl+Y 刪除當前行 Ctrl+KB定義塊首 Ctrl+KK 定義塊尾 Ctrl+KC復制塊 Ctrl+KY刪除塊Ctrl+KV 移動塊
(2)Tc3.0DOS平台軟體。目前比較不錯的C/C++語言編譯器,支持滑鼠,語法著色,多文檔,錯誤跟蹤也很好,操作與TC2.0有很多類似,TC2.0會用那麼TC3.0也很快會用,缺點是以前很多代碼是用TC2.0設計的,而由於TC3.0語法要求的嚴格性,如要求函數必須定義類型,所以向下存在一定的兼容性問題,所以對於初學者選擇起來很矛盾,建議先學會使用TC2.0,而把TC3.0作為能力的補充和平時工具之用。目前有的教材已經選用該編譯器,不過需要一個較長的調整期,因為很多源代碼需要過渡過來才行,雖然性能上比TC2.0有所提高,但對於初學者沒有質的變化,選擇時需要注意。
(3)VC++ 6.0Windows平台。目前主流的C/C++語言編譯器,包含強大的類和內嵌WinAPI的MFC,具有可視化的編程界面。對於TC等的作品也具有向下兼容的特點,建議讀者選用作為C語言過渡到Windows平台編程的首選工具。當然,作為學習,該系統顯得有點龐大,不過通過入門的學習,調試舊的Tc程序也可以。還有其他的編譯器,例如Win tc、gcc、lcc、BC 3.1等等,事實上,編譯器的選擇不是最重要的,他們都可以完成基本的C語言編譯,不過面向考試的時候,還是根據考試的要求,因為編譯器的編譯結果存在著一定的差別,特別在一些復雜語法的語句編譯上。從目前的形勢看,對於從未學習過計算機程序設計的讀者來說,學習C語言時,建議開始選擇Tc2.0,雖然不能使用滑鼠,但幾個快捷鍵的熟練運用基本上可以解決操作的問題,當然有時間的時候了解使用TC3.0就更好了;對於學習過TC2.0的讀者來說,平時完全可以在TC3.0或VC 6.0下調試程序,但考試的時候如果要求必須在TC2.0下,那最好上機練習時在TC2.0下。當然,使用如記事本等文本編輯器編輯程序,然後用TC來調試也不失為一種好方法。另外,DOS平台的Tc2.0或Tc3.0都存在某些機器運行時鍵盤響應遲緩或停頓的問題,Tc3.0可能這種現象要多一點,這主要是由DOS基本內存的不足造成的。可以安裝水平考試課題組提供的DOS模擬器來解決問題,該模擬器重新劃分更多的內存,效果不錯。
新的類似軟體平台也需要讀者關注,那就是Java和Viusal C#,因為從發展的眼光來看,目前軟體設計平台有一定的趨同趨勢。例如:java和C#,都來自於C和C++,都作了不錯的擴展和優化。對於深入學習C語言的同學,未來幾年請務必學習VisualStudio.Net或者Java,因為這二者代表了現在的軟體設計主流。他們的主要特點是:優秀的IDE設計環境,強大的WEB服務設計功能,對C++的優化和擴充,基於虛擬機的運行模式,優秀的面向系統開發,可視化的較為成熟的面向對象的程序設計機制等等.
9. 學C語言用哪個編程軟體最好 急
你好,很高興能回答你的問題,我給你說說以下幾種吧,各有利弊,個人還是覺得vc6.0初學較好,希望對你有幫助
果你是剛剛學,其實wintc是款很不錯的軟體。去用一下你就知道了,因為我自學c時就是用的那個軟體,真的向你推薦它!
推薦使用VC++6.0中文版 因為國家考試用的就是那個 當然了還有Turbo C這個也是以前國家考試用的 但是這些版本很老了 而且沒有現在的方便 比如你遇到了問題想去咨詢下別人 老版本的尤其是比較經典的turbo c2.0的 你需要把原來的代碼在寫一遍才行 而Visusl C++6.0的則可以用滑鼠進行復制操作 很是快捷
而且VC還有自動用不同的顏色來顯示不同類型的代碼 對初學者來說 是個很好的糾錯功能
比如你的關鍵字打錯了 顏色是會變的
因為dev本身存在許多缺陷,反而使你能擁有更好的習慣,等到你用dev可以駕馭難題的時候,你會覺得其它軟體強大的調試功能根本就是多餘的
TC++對C++標准支持的是一塌糊塗,而VS2005(VC8)和DEV-C++(GCC)可以幾乎完美的支持C++標准.
過時的不是C語言,而是TC所提供的C語言。TC是幾十年前的了,在這段時間里,C語言變了變了又變了。而且TC存在的對一些非標準的容忍,就如同現在社會上行業中的「潛規則」一樣,或許會給人方便,但是如果不打算在圈內混(一直用TC),還是別學這些「潛規則」比較好。C/C++程序設計學習與實驗系統 2010.4[下載地址]
原名《Turbo C/C++ for Windows 集成實驗與學習環境》,現在已支持最新操作系統WINDOWS 7,它是從事一線教學的大學教師根據多媒體教學演示和C語言初學者的特點,量身打造的一個簡單易用的C/C++程序設計教學演示、學習與實驗軟體(支持TC2/TC3、VC6三種編譯器,沒有使用日期限制)。與軟體配套的《 C/C++程序設計教程(配有同步實驗、流程式控制制語句動畫演示、提供教程中所有程序實例、實驗、作業中的源代碼(全部用VC6編譯器調試通過))》融入了作者多年的教學和學習經驗、編程建議、編程感悟,新增讀書筆記功能有利用戶 記錄教程中的重點、難點、學習心得體會,針對用戶學習教程中遇到的問題開通了疑難問題解答論壇等,同時,為了便於C語言學習,加入C語言學習指導、入門程序實例、典型源程序、典型的函數演算法,課程設計指導、課程設計源程序、 Visual C++6.0中英文編譯錯誤信息同步顯示功能(並配有60多種同步的語法錯誤程序實例、修改方法等)、 Turbo C2.0 中英文編譯錯誤信息同步顯示功能、Turbo C++3.0常見編譯錯誤信息、C語言專業詞彙的中英文對照、2004年到2010年13套全國計算機等級考試二級 C 語言的真題筆試試卷及答案和10套上機模擬試題和詳盡的答案與分析等大量的學習資源。另外 「編程日記」 功能可以讓你記錄你的 C 語言學習歷程, 「資料管理」 功能讓你大量的下載資料不再難找
10. 現在學習c語言都是用什麼編譯器
初學者用的一般是TC編譯器。
名詞解釋
c語言
C語言是一種計算機程序設計語言,屬高級語言范疇。它既具有高級語言的特點,又具有匯編語言的特點。它可以作為工作系統設計語言,編寫系統應用程序,也可以作為應用程序設計語言,編寫不依賴計算機硬體的應用程序,代碼清晰精簡,十分靈活。
C語言,是一種通用的、過程式的編程語言,廣泛用於系統與應用軟體的開發。具有高效、靈活、功能豐富、表達力強和較高的移植性等特點,在程序員中備受青睞。最近25年是使用最為廣泛的編程語言。
C語言是由UNIX的研製者丹尼斯·里奇(Dennis Ritchie)於1970年 由 肯·湯普遜(Ken Thompson)所研製出的B語言的基礎上發展和完善起來的。目前,C語言編譯器普遍存在於各種不同的操作系統中,例如UNIX、MS-DOS、Microsoft Windows及Linux等。C語言的設計影響了許多後來的編程語言,例如C++、Objective-C、Java、C#等。
語言是1972年由美國的Dennis Ritchie設計發明的,並首次在UNIX操作系統的 DEC PDP-11 計算機上使用。它由早期的編程語言BCPL(Basic Combined Programming Language)發展演變而來,在1970年,AT&T貝爾實驗室的Ken Thompson根據BCPL語言設計出較先進的並取名為B的語言,最後導致了C語言的問世。 而B語言之前還有A語言,取名自世界上第一位女程序員Ada(艾達)。
隨著微型計算機的日益普及,出現了許多C語言版本。由於沒有統一的標准, 使得這些C語言之間出現了一些不一致的地方。為了改變這種情況,美國國家標准研究所(ANSI)為C語言制定了一套ANSI標准,成為現行的C語言標准。
註:國際標准化組織ISO也制定的C語言的標准,目前被很多編譯器所採用,如:GCC等。
C語言是世界上最流行、使用最廣泛的高級程序設計語言之一。[2]
在操作系統和系統使用程序以及需要對硬體進行操作的場合,用C語言明顯優於其它高級語言,許多大型應用軟體都是用C語言編寫的。
C語言繪圖能力強,具有可移植性,並具備很強的數據處理能力,因此適於編寫系統軟體,三維,二維圖形和動畫。它是數值計算的高級語言。
常用的編譯軟體有Microsoft Visual C++,Borland C++,gcc(linux系統下最常用的編譯器),Watcom C++ ,Borland C++, Borland C++ Builder,Borland C++ 3.1 for DOS,Watcom C++ 11.0 for DOS,GNU DJGPP C++, Lccwin32 C Compiler 3.1,Microsoft C,High C等。
同時也是中國國家計算機等級考試中計算機二級考試下的一個考試科目。