C語言程式設計
C語言概述
C語言是一種結構化的計算機程式設計語言。它同時具有高階語言和組合語言的特點,因此它不僅可以作為系統設計語言,編寫工作系統應用程式,還可以作為應用程式設計語言,編寫不依賴於計算機硬體的應用程式。
C語言發展過程
C語言的原型是ALGOL 60語言(A語言)。
1967年,劍橋大學的Matin Richards對CPL語言進行了簡化,產生了BCPL語言。
1970年,美國貝爾實驗室的Ken Thompson將BCPL進行了修改,併為它起了一個有趣的名字“B語言”。意思是將CPL語言煮幹,提煉出它的精華。並且,他用B語言寫了第一個UNIX作業系統。
1973年,美國貝爾實驗室的D.M.RITCHIE在B語言的基礎上最終設計出了一種新的語言,他取了BCPL的第二個字母作為這種語言的名字,這就是C語言。
1987年,隨著微型計算機的日益普及,出現了許多C語言版本。由於沒有統一的標準使得這些C語言之間出現了一些不一致的地方。為了改變這種情況,美國國家標準研究所(ANSI)為C語言制定了一套ANSI標準,成為現行的C語言標準,即經典的87 ANSI C。
1990年,國際化標準組織ISO(Intrernational Standard Organization)接受了87 ANSI C為ISO C的標準(ISO9899-1990)。
1994年,ISO修訂了C語言的標準。目前流行的C語言編譯系統大多是以ANSI C為基礎進行開發的。
C語言特點
C語言把高階語言的基本結構和語句與低階語言的實用性結合起來。它可以象組合語言一樣對位、位元組和地址進行操作, 而這三者是計算機最基本的工作單元。
C語言是結構式語言,結構式語言的顯著特點是程式碼及資料的分隔化,即程式的各個部分除了必要的資訊交流外彼此獨立。這種結構化方式可使程式層次清晰, 便於使用、維護以及除錯。
C語言是以函式形式提供給使用者的,這些函式可方便地呼叫, 並具有多種迴圈、條件語句控制程式流向, 從而使程式完全結構化。
C語言具有各種各樣的資料型別,有整型、實型、字元型、陣列型別、指標型別、結構體型別、共用體型別等。能用來實現各種複雜的資料型別的運算。並且指標使得程式的效率更高。
C語言的運算子包含的範圍很廣泛,共有種34個運算子。C語言把括號、賦值、強制型別轉換等都作為運算子處理。從而使C的運算型別極其豐富表示式型別多樣化,靈活使用各種運算子可以實現在其它高階語言中難以實現的運算。
C語言具有強大的圖形功能, 支援多種顯示器和驅動器。而且計算功能、邏輯判斷功能也比較強大,可以實現決策目的編遊戲,編3D遊戲,做資料庫,做聯眾世界,做聊天室,做PHOTOSHOP做FLASH,做3DMAX。
C語言對語法的限制不太嚴格,從而留給程式編寫者較大的自由空間。
C語言適合於多種作業系統, 如DOS、UNIX,同時它也適用於多種機型。
C語言程式生成程式碼質量高,程式執行效率高,一般只比彙編程式生成的目的碼效率低10-20%。
C語言不足
C語言對語法限制不太嚴格,對變數的型別約束不嚴格,影響程式的安全性,對陣列下標越界不作檢查。
C語言比其他高階語言較難掌握。
C語言的常用版本
Microsoft C(MS C)
Borland Turbo C(Turbo C)
AT&T C
這些C語言版本不僅實現了ANSI 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
Microsoft C
High C
Turbo C
Dev-C++
C-Free
Win-TC
C語言相關書籍
《The C Programming Language》:Brian W.Kernighian和Dennis M.Ritchie
相關文章
- C語言程式設計原理C語言程式設計
- c語言程式設計題C語言程式設計
- C語言MySQL程式設計示例C語言MySql程式設計
- C 語言程式設計(unix) (轉)程式設計
- 結對程式設計(c語言)程式設計C語言
- 奇怪的C語言——C51程式設計C語言注意事項C語言程式設計
- C 語言程式設計利器之 CLion程式設計
- C#函數語言程式設計C#函數程式設計
- C語言程式設計基本規範C語言程式設計
- MySQL的C語言程式設計(一)MySqlC語言程式設計
- 偽隨機數C語言程式設計隨機C語言程式設計
- C語言程式設計-漢字點陣C語言程式設計
- C語言+圖形程式設計——自制象棋C語言程式設計
- C++的函數語言程式設計C++函數程式設計
- C 語言程式設計習慣總結程式設計
- C語言程式設計B作業04C語言程式設計
- 初步瞭解C語言Windows程式設計C語言Windows程式設計
- Linux下C語言程式設計(轉)LinuxC語言程式設計
- 傻瓜程式設計入門(C語言版)程式設計C語言
- C語言程式設計題T1C語言程式設計
- C語言指標應用程式設計C語言指標程式設計
- C 語言高效程式設計與程式碼優化程式設計優化
- 《C程式設計語言》 練習3-5C程式程式設計
- C語言如何實現泛型程式設計?C語言泛型程式設計
- C語言程式設計之《資料輸出》C語言程式設計
- C語言趣味程式設計100例pdfC語言程式設計
- 大一C語言程式設計練習題C語言程式設計
- C語言 之 多執行緒程式設計C語言執行緒程式設計
- C語言程式設計——9,預處理命令C語言程式設計
- C語言高效程式設計的幾招(轉)C語言程式設計
- c語言程式設計--實驗報告一C語言程式設計
- c語言程式設計——實驗報告六C語言程式設計
- # c語言程式設計——實驗報告一C語言程式設計
- c語言程式設計——實驗報告一C語言程式設計
- c語言程式設計——實驗報告二C語言程式設計
- C語言程式設計—實驗報告四C語言程式設計
- C語言程式設計-實驗報告4C語言程式設計
- 《C語言程式設計:問題與求解方法》——2.2節C語言歷史概述C語言程式設計