如果您是一名入門學者,或者您還不理解什麼是編程語言,請查看:什麼是編程語言。
如果您之前未接觸任何編程語言,或者您不理解為什麼學習C語言,請查看:為什麼C語言是首選。
C語言在19世紀70年代初問世,1978年美國電話電報公司(AT&T)貝爾實驗室正式發布C語言,後由美國國家標准局(American National Standards Institute,簡稱ANSI)制定了一套C語言標准,於1983年發表,通常稱之為ANSI C。
C語言之父——裡奇
在學習C語言之前,我們先了解一下C語言的歷史。
C語言是一門通用的,模塊化,程序化的編程語言,被廣泛應用於
操作系統和應用軟件的開發。由於其高效和可移植性,適應於不同硬件和軟件平台,深受開發員的青睐。
C語言早期發展
1969-1973年在美國電話電報公司(AT&T)貝爾實驗室開始了C語言的最初研發。根據C語言的發明者丹尼斯·裡奇 (Dennis Ritchie) 說,C 語言最重要的研發時期是在1972年。
說明:丹尼斯·裡奇(Dennis Ritchie),C語言之父,UNIX之父。1978年與布萊恩·科爾尼干(Brian Kernighan)一起出版了名著《C程序設計語言(The C Programming Language)》,現在此書已翻譯成多種語言,成為C語言方面最權威的教材之一。2011年10月12日(北京時間為10月13日),丹尼斯·裡奇去世,享年70歲。
C語言之所以命名為C,是因為C語言源自Ken Thompson發明的 B語言,而B語言則源自BCPL語言。
C語言的誕生是和UNIX操作系統的開發密不可分的,原先的UNIX操作系統都是用匯編語言寫的,1973年UNIX操作系統的核心用C語言改寫,從此以後,C語言成為編寫操作系統的主要語言。
K&R C
1978年,丹尼斯·裡奇(Dennis Ritchie)和布萊恩·科爾尼干(Brian Kernighan)出版了一本書,名叫《The C Programming Language》(中文譯名為《C程序設計語言》)。這本書被C語言開發者們稱為“K&R”,很多年來被當作C語言的非正式的標准說明。人們稱這個版本的C語言為“K&R C”。
1988年丹尼斯·裡奇(Dennis Ritchie)和布萊恩·科爾尼干(Brian Kernighan)修改此書,出版了《The C Programming Language》第二版,第二版涵蓋了ANSI C語言標准。第二版從此成為大學計算機教育有關C語言的經典教材,多年後也沒再出現過更好的版本。
ANSI C
1970到80年代,C語言被廣泛應用,從大型主機到小型微機,也衍生了C語言的很多不同版本。
為統一C語言版本,1983年美國國家標准局(American National Standards Institute,簡稱ANSI)成立了一個委員會,來制定C語言標准。1989年C語言標准被批准,被稱為ANSI X3.159-1989 "Programming Language C"。這個版本的C語言標准通常被稱為ANSI C。
目前,幾乎所有的開發工具都支持ANSI C標准。是C語言用得最廣泛的一個標准版本。
C99
在ANSI C標准確立之後,C語言的規范在很長一段時間內都沒有大的變動。1995年C程序設計語言工作組對 C語言進行了一些修改,成為後來的1999年發布的 ISO/IEC 9899:1999標准,通常被成為C99。
但是各個公司對C99的支持所表現出來的興趣不同。當GCC和其它一些商業編譯器支持C99的大部分特性的時候,微軟和Borland卻似乎對此不感興趣。
說明:GCC(GNU Compiler Collection,GNU編譯器集合)是一套由GNU工程開發的支持多種編程語言的編譯器。
綜上所述,目前廣泛使用的C語言版本是ANSI C,最經典的C語言教材是《C程序設計語言(The C Programming Language)》。
C語言對其它語言的影響
很多編程語言都深受C語言的影響,比如C++(原先是C語言的一個擴展)、C#、Java、
PHP、Javascript、Perl、LPC和UNIX的C Shell等。
也正因為C語言的影響力,掌握C語言的人,再學其它編程語言,大多能很快上手,觸類旁通,很多大學將C語言作為計算機教學的入門語言。