㈠ c璇璦緙栬瘧鍣ㄧ數鑴戠増鏈夊摢浜涳紵
甯歌佺殑C璇璦緙栬瘧鍣ㄦ槸浠涔?
甯歌佺殑C璇璦緙栬瘧鍣ㄦ槸浠涔?
C璇璦緙栬瘧鍣ㄧ洰鍓嶄富瑕佹湁VC++銆乨ev-C++銆丆-Free銆亀in-TC銆乀C0絳夌瓑銆傚叾涓姣旇緝緇忓吀鐨刅C++錛屽井杞鐨勪駭鍝侊紝緙栬瘧鍣錛岄摼鎺ュ櫒錛岃繍琛岋紝璋冭瘯絳夊姛鑳戒簬涓浣撶殑寮哄ぇ寮鍙戝伐鍏鳳紝鐗圭偣鏄鍔熻兘鍗佸垎寮哄ぇ錛屽逛簬鏂版墜鏉ヨ撮渶瑕佷竴孌墊椂闂村幓鎽哥儲銆
c璇璦鍙浠ョ敤鐨勭紪璇戝櫒鏈夊緢澶氾紝鍖呮嫭MicrosoftVisualC++銆丮yEclipse銆乀urboC鍜実cc緙栬瘧鍣ㄧ瓑銆
GCC姣鏃犵枒闂錛孏CC鍑犱箮鏄痷nix鍙妉inux緋葷粺涓鏈閫氱敤鐨勭紪璇戝櫒濂椾歡錛屽嚑涔庢墍鏈夌殑linux鍙戣岀増閮介勮呬簡GCC浣滀負C璇璦鐨勯粯璁ょ紪璇戝櫒銆傞櫎浜嗗笴璇璦鐨勬敮鎸侊紝GCC榪樻敮鎸丆++銆丱bjective-C絳夊氱嶈璦銆
c璇璦緙栬瘧鍣ㄦ湁鍝浜?
c璇璦緙栬瘧鍣ㄦ湁鍝浜?
鐩鍓嶆渶嫻佽岀殑C璇璦緙栬瘧鍣ㄦ湁浠ヤ笅鍑犵嶏細GNUCompilerCollection鎴栫ОGCCGCC錛圙NUCompilerCollection錛孏NU緙栬瘧鍣ㄥ椾歡錛夛紝鏄鐢盙NU寮鍙戠殑緙栫▼璇璦緙栬瘧鍣ㄣ傚畠鏄浠GPL璁稿彲璇佹墍鍙戣岀殑鑷鐢辮蔣浠訛紝涔熸槸GNU璁″垝鐨勫叧閿閮ㄥ垎銆
鍙浠ョ紪鍐檆璇璦鐨勮蔣浠舵湁錛歏im銆丆緙栬瘧鍣ㄣ丏ev-C銆丆ode錛欱locks銆乂isualStudio絳夈俈imVim鏄涓涓綾諱技浜嶸i鐨勮憲鍚嶇殑鍔熻兘寮哄ぇ銆侀珮搴﹀彲瀹氬埗鐨勬枃鏈緙栬緫鍣錛屽湪Vi鐨勫熀紜涓婃敼榪涘拰澧炲姞浜嗗緢澶氱壒鎬с俈IM鏄鑷鐢辮蔣浠躲
c璇璦鍙浠ョ敤鐨勭紪璇戝櫒鏈夊緢澶氾紝鍖呮嫭MicrosoftVisualC++銆丮yEclipse銆乀urboC鍜実cc緙栬瘧鍣ㄧ瓑銆
c璇璦緙栬瘧杞浠舵湁鍝浜
c璇璦緙栬瘧杞浠舵湁鍝浜
1銆佸c璇璦鍙浠ョ敤鐨勮蔣浠舵帹鑽愬備笅錛歍urboC鏄鐢辯編鍥紹orland鍏鍙稿紑鍙戠殑涓濂桟璇璦紼嬪簭寮鍙戝伐鍏鳳紝Borland鍏鍙告槸涓瀹朵笓闂ㄤ粠浜嬭蔣浠跺紑鍙戙佺爺鍒剁殑澶у叕鍙搞
2銆佸彲浠ョ紪鍐檆璇璦鐨勮蔣浠舵湁錛歏im銆丆緙栬瘧鍣ㄣ丏ev-C銆丆ode錛欱locks銆乂isualStudio絳夈俈imVim鏄涓涓綾諱技浜嶸i鐨勮憲鍚嶇殑鍔熻兘寮哄ぇ銆侀珮搴﹀彲瀹氬埗鐨勬枃鏈緙栬緫鍣錛屽湪Vi鐨勫熀紜涓婃敼榪涘拰澧炲姞浜嗗緢澶氱壒鎬с俈IM鏄鑷鐢辮蔣浠躲
3銆佹墜鏈篶璇璦緙栫▼app鏈夈奀璇璦瀛︿範瀹濆吀銆嬨併奀璇璦緙栬瘧鍣ㄣ嬨併奀璇璦緙栬瘧鍣↖DE銆嬨併婅彍楦熷C璇璦銆嬨併婃墜鏈虹紪紼嬨嬨
c璇璦緙栫▼杞浠舵湁鍝浜
c璇璦緙栫▼杞浠舵湁鍝浜
1銆佸父鐢ㄧ殑c璇璦緙栫▼杞浠舵湁錛歞evc++鏄姣旇緝瀹規槗涓婃墜鐨勭紪紼嬭蔣浠訛紝浼樼偣鏄鍔熻兘綆媧侊紝欏甸潰綆媧併
2銆佸c璇璦鍙浠ョ敤鐨勮蔣浠舵帹鑽愬備笅錛歍urboC鏄鐢辯編鍥紹orland鍏鍙稿紑鍙戠殑涓濂桟璇璦紼嬪簭寮鍙戝伐鍏鳳紝Borland鍏鍙告槸涓瀹朵笓闂ㄤ粠浜嬭蔣浠跺紑鍙戙佺爺鍒剁殑澶у叕鍙搞
3銆乀urboCTurboC鏄鏈涓虹粡鍏哥殑緙栬瘧鍣錛屽逛簬鏂版墜鏉ヨ達紝鏄姣旇緝瀹規槗涓婃墜涓旂畝鍗曟槗瀛︼紝緋葷粺浣撶Н涔熸瘮杈冨皬錛岃繍琛屾瘮杈冨揩錛屾槸瀛︿範C璇璦鐨勯栭夎蔣浠躲
4銆乧璇璦鐢∕inGW銆乄IN-TC銆丆ygwin銆丮icrosoftVisualstdio銆丆odeBlocks絳夌紪紼嬭蔣浠躲侻inGW錛氭槸MinimalistGNUforWindows鐨勭緝鍐欍傚畠鏄涓涓鍙鑷鐢變嬌鐢ㄥ拰鑷鐢卞彂甯冪殑Windows鐗瑰畾澶存枃浠跺拰浣跨敤GNU宸ュ叿闆嗗煎叆搴撶殑闆嗗悎銆
5銆乧璇璦緙栫▼杞浠(鏀鎸亀in7/win8)鏄涓嬈炬敮鎸佸氳璦寮鍙戠殑寮鍙戠郴緇熴俢璇璦緙栫▼杞浠(鏀鎸亀in7/win8)鍚屾椂鏀鎸乧璇璦錛宑浠ュ強vb璇璦鐨勫紑鍙戱紝杞浠惰兘寰堝ソ鐨勫吋瀹箇in7浠ュ強win8錛岀敤鎴峰彧闇璁劇疆杞浠跺吋瀹規э紝鎶婂畠璁句負win98錛寃inxp絳夌瓑銆
linux寮鍙戝摢閲屽ソ錛
linux寮鍙戝摢閲屽ソ錛
1銆佸緩璁浣犻夋嫨鐜板湪鐨勪富嫻佺郴緇熷畨鍗撶郴緇熴傚洜涓哄畨鍗撶郴緇熺殑緋葷粺鏀鎸佸ソ錛孉PP澶氾紝婊¤凍浣犵殑鎵鏈夊簲鐢ㄩ渶瑕併俵inux緋葷粺鏄鑰佺墝鐨勭郴緇燂紝澶氱敤鍦ㄦ湇鍔″櫒涓婏紝涔嬪墠鎽╂墭緗楁媺鏇劇粡鐢ㄨ繃錛屼絾鏄鐢變簬鏀鎸佺殑杞浠朵笉澶氾紝緋葷粺涔熷氨娌℃湁浠涔堝競鍦轟簡銆
2銆佸氨涓氭湇鍔★細涓撲笟鐨勫煿璁鏈烘瀯閮戒細榪涜屽氨涓氭寚瀵兼湇鍔★紝鍖呭惈闈㈣瘯絳夛紝鍚屾椂榪樻湁澶т紒涓氬悎浣滐紝鍙浠ユ帹鑽愬氨涓氥
3銆丩inux搴曞眰鍐呮牳/椹卞姩寮鍙戝祵鍏ュ紡Linux寮鍙戠瓑銆侺inux涓嬬殑鏁版嵁搴撴柟鍚慙inux涓嬬殑鏁版嵁搴撴柟鍚戜富瑕佸寘鎷琈ysql銆乷racle浠ュ強windows涓嬬殑SQLServer鍙奃B2絳夌殑綆$悊銆
C璇璦鍦╳indows騫沖彴涓婄殑緙栬瘧鍣ㄦ湁鍝浜
C璇璦鍦╳indows騫沖彴涓婄殑緙栬瘧鍣ㄦ湁鍝浜
鐢╒isualStudio2010鏃楄埌鐗堬紝瀹冩槸涓撲負Win7鎵撻犵殑錛屽叾浠栫殑鐗堟湰涔熷彲浠ュ吋瀹癸紝鑰屼笖鏀鎸乂C/VB/C#澶氱嶈璦寮鍙戱紝瀹夎呬笅鏉ユ墠2G澶氾紝鏄涓嬈劇浉褰撲笉閿欑殑寮鍙戣蔣浠躲傜敤寮鍙戠増鐨勬瘮杈冨ソ錛屽︿範鐗堢殑鏈変簺鍔熻兘鍑忔帀浜嗐俥clipseCDT涔熷彲浠ャ
灝辨槸鐢–璇璦緙栧啓鐨勭▼搴忥紝緇忚繃鍝縐嶇紪璇戝櫒緙栬瘧涔嬪悗錛屽彲浠ュ湪WINDOWS騫沖彴涓婅繍琛屻
瀵逛簬褰撳墠涓繪祦妗岄潰鎿嶄綔緋葷粺鑰岃█錛屽彲浣跨敤VisualC++銆丟CC浠ュ強LLVMClang榪欎笁澶х紪璇戝櫒銆俈isualC++錛堢畝縐癕SVC錛夊彧鑳界敤浜嶹indows鎿嶄綔緋葷粺錛汫CC鍜孡LVMClang闄や簡鍙鐢ㄤ簬Windows鎿嶄綔緋葷粺涔嬪栵紝涓昏佺敤浜嶶nix/Linux鎿嶄綔緋葷粺銆
bioswindows鎿嶄綔緋葷粺c璇璦緙栬瘧鍣ㄩ兘鏄疢icrosoftVisualStudio銆侻icrosoftVisualStudio鏄緹庡浗寰杞鍏鍙哥殑寮鍙戝伐鍏峰寘緋誨垪浜у搧錛屽寘鎷浜嗘暣涓杞浠剁敓鍛藉懆鏈熶腑鎵闇瑕佺殑澶ч儴鍒嗗伐鍏鳳紝濡俇ML宸ュ叿銆佷唬鐮佺℃帶宸ュ叿錛屾槸涓撻棬緙栧啓c璇璦鐨勭紪紼嬪伐鍏楓
clion鐢╟make錛岀浉姣旀潵璇村ぇ閮ㄥ垎c紼嬪簭鐢ㄧ殑閮芥槸makefile錛岄渶瑕侀傚簲涓涓嬨侱evc++錛氳繖涓狪DE鏄痺indows鐜澧冧笅鐨勶紝鎿嶄綔綆鍗曪紝鍔熻兘涔熶笉寮憋紝閫傚悎鏂版墜浣跨敤銆侰odeblocks錛堝己鍔涙帹鑽愶級錛氬姛鑳芥瘮杈冨己澶х殑c/c++IDE錛屾湁鐫涓嶉敊鐨勬櫤鑳芥彁紺恆
㈡ C語言編譯器有哪些各有什麼特點
C語言編譯器目前主要有VC++、dev-C++、C-Free、win-TC、TC 2.0等等。
其中比較經典的VC++,微軟的產品,編譯器,鏈接器,運行,調試等功能於一體的強大開發工具,特點是功能十分強大,對於新手來說需要一段時間去摸索。
dev-C++是windows下一款開發c/c++的開發環境,使用gcc為編譯器,遵循標准,功能比較強大,語法高量,可以進行單步調試(這對排除錯誤很重要),進行斷點設置等功能,遵循C標准,是一款很強大的開發工具。
C-Free是一款支持多種編譯器的專業化C/C++集成開發環境(IDE)。利用C-Free,使用者可以輕松地編輯、編譯、連接、運行、調試C/C++程序。
TC 2.0:Borland公司的產品,在dos界面下編譯運行,小巧、靈活,但是不能使用滑鼠。
win-TC:在tc2.0的基礎上加上了界面,能夠使用滑鼠,具有語法高量,可以嵌入匯編等特點,對新手一些,拜託了不能用滑鼠的困難。
編譯器,簡單講,就是將「一種語言(通常為高級語言)」翻譯為「另一種語言(通常為低級語言)」的程序。一個現代編譯器的主要工作流程:源代碼 (source code) → 預處理器 (preprocessor) → 編譯器 (compiler) → 目標代碼 (object code) → 鏈接器(Linker) → 可執行程序 (executables)。
㈢ c語言的編譯器有哪些
C語言的編譯器有:GCC(GNU編譯器集合)、Clang、Microsoft Visual C++(MSVC)、Turbo C等。
GCC(GNU編譯器集合)
GCC是一個開源的編譯器,它支持多種編程語言,包括C語言。由於其免費、開源的特性以及良好的兼容性,GCC在Linux系統上非常流行。它不僅提供了編譯器的基本功能,還包括了大量的工具鏈和庫。由於它是跨平台的,因此在Linux、Windows和macOS等操作系統上都可以使用。
Clang
Clang是一個基於LLVM的C語言編譯器。它提供了非常高的編譯速度,並且具有強大的錯誤檢測和診斷能力。Clang的語法分析器能夠識別許多編程錯誤,使得開發者在編寫代碼時可以更加高效。它也支持多種操作系統,並且在一些現代的軟體開發環境中得到了廣泛的應用。
Microsoft Visual C++(MSVC)
Microsoft Visual C++是微軟開發的一種集成開發環境中的C語言編譯器。它提供了大量的庫函數,並支持最新的C語言標准。由於它內置於Visual Studio開發環境中,因此在Windows平台上進行C語言開發時非常受歡迎。同時,它還能提供高效的代碼優化和調試功能。
Turbo C
Turbo C是一種較為早期的C語言編譯器,主要在DOS操作系統中使用。盡管它已經比較久遠,但由於其小巧、快速的特點,在一些特定的應用場景中仍然被使用。現在,一些基於Turbo C的集成開發環境(IDE)也在市場上出現,為開發者提供了更便利的開發工具。
這些都是主流的C語言編譯器,每種編譯器都有其獨特的特性和適用場景。開發者可以根據自身的需求選擇合適的編譯器進行開發。
㈣ C語言編譯原理是什麼
編譯共分為四個階段:預處理階段、編譯階段、匯編階段、鏈接階段。
1、預處理階段:
主要工作是將頭文件插入到所寫的代碼中,生成擴展名為「.i」的文件替換原來的擴展名為「.c」的文件,但是原來的文件仍然保留,只是執行過程中的實際文件發生了改變。(這里所說的替換並不是指原來的文件被刪除)
2、匯編階段:
插入匯編語言程序,將代碼翻譯成匯編語言。編譯器首先要檢查代碼的規范性、是否有語法錯誤等,以確定代碼的實際要做的工作,在檢查無誤後,編譯器把代碼翻譯成匯編語言,同時將擴展名為「.i」的文件翻譯成擴展名為「.s」的文件。
3、編譯階段:
將匯編語言翻譯成機器語言指令,並將指令打包封存成可重定位目標程序的格式,將擴展名為「.s」的文件翻譯成擴展名為「.o」的二進制文件。
4、鏈接階段:
在示例代碼中,改代碼文件調用了標准庫中printf函數。而printf函數的實際存儲位置是一個單獨編譯的目標文件(編譯的結果也是擴展名為「.o」的文件),所以此時主函數調用的時候,需要將該文件(即printf函數所在的編譯文件)與hello
world文件整合到一起,此時鏈接器就可以大顯神通了,將兩個文件合並後生成一個可執行目標文件。
㈤ c語言編譯一般分為哪幾部分
分為四部:
1.編輯:輸入源程序並存檔(.C)。
2.編譯:將源程序翻譯為目標文件(.OBJ)。
3.鏈接:將目標文件生成可執行文件( .EXE)。
4.運行:執行.EXE文件,得到運行結果。
(5)c編譯器有哪些段擴展閱讀:
c語言基本數據類型:
void:聲明函數無返回值或無參數,聲明無類型指針,顯示丟棄運算結果。(C89標准新增)
char:字元型類型數據,屬於整型數據的一種。(K&R時期引入)
int:整型數據,表示範圍通常為編譯器指定的內存位元組長。(K&R時期引入)
float:單精度浮點型數據,屬於浮點數據的一種。(K&R時期引入)
double:雙精度浮點型數據,屬於浮點數據的一種。(K&R時期引入)
_Bool:布爾型(C99標准新增)
_Complex:復數的基本類型(C99標准新增)
_Imaginary:虛數,與復數基本類型相似,沒有實部的純虛數(C99標准新增)
_Generic:提供重載的介面入口(C11標准新增)
參考資料:c語言-網路