亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網(wǎng)為廣大站長提供免費收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.430618.com 】, 免友鏈快審服務(wù)(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

簡述C語言的三個標準:ANSI/ISO C99 C11

C語言的三個標準

目前,有許多C實現(xiàn)可用。在理想情況下,編寫C程序時,假設(shè)該程序中未使用機器特定的編程技術(shù),那么它的運行情況在任何實現(xiàn)中都應(yīng)該相同。要在實踐中做到這一點,不同的實現(xiàn)要遵循同一個標準。C語言發(fā)展之初,并沒有所謂的C標準。1978年,布萊恩·柯林漢(BrianKernighan)和丹尼斯·里奇(Dennis Ritchie)合著的The C Programming Language(《C語言程序設(shè)計》)第1版是公認的C標準,通常稱之為K&R C或經(jīng)典C。特別是,該書中的附錄中的“C語言參考手冊”已成為實現(xiàn)C的指導(dǎo)標準。例如,編譯器都聲稱提供完整的K&R實現(xiàn)。雖然這本書中的附錄定義了C語言,但卻沒有定義C庫。與大多數(shù)語言不同的是,C語言比其他語言更依賴庫,因此需要一個標準庫。實際上,由于缺乏官方標準,UNIX實現(xiàn)提供的庫已成為了標準庫。

1)第1個ANSI/ISO

C標準隨著C的不斷發(fā)展,越來越廣泛地應(yīng)用于更多系統(tǒng)中,C社區(qū)意識到需要一個更全面、更新穎、更嚴格的標準。鑒于此,美國國家標準協(xié)會(ANSI)于1983年組建了一個委員會(X3J11),開發(fā)了一套新標準,并于1989年正式公布。該標準(ANSI-C)定義了C語言和C標準庫。

國際標準化組織于1990年采用了這套C標準(ISO-C)。ISO-C和ANSI-C是完全相同的標準。ANSI/ISO標準的最終版本通常叫作C89(因為ANSI于1989年批準該標準)或C90(因為ISO于1990年批準該標準)。另外,由于ANSI先公布C標準,因此業(yè)界人士通常使用ANSI-C。在該委員會制定的指導(dǎo)原則中,最有趣的可能是:保持C的精神。委員會在表述這一精神時列出了以下幾點:

  1. 信任程序員;Trust the programmer.
  2. 不要妨礙程序員做需要做的事;Don't prevent the programmer from doing what needs to be done.
  3. 保持語言精練簡單;Keep the language small and simple.
  4. 只提供一種方法執(zhí)行一項操作;Provide only one way to do an operation.
  5. 讓程序運行更快,即使不能保證其可移植性。Make it fast, even if it is not guaranteed to be portable.

在最后一點上,標準委員會的用意是:作為實現(xiàn),應(yīng)該針對目標計算機來定義最合適的某特定操作,而不是強加一個抽象、統(tǒng)一的定義。在學習C語言過程中,許多方面都反映了這一哲學思想。

2)C99標準

1994年,ANSI/ISO聯(lián)合委員會(C9X委員會)開始修訂C標準,最終發(fā)布了C99標準。該委員會遵循了最初C90標準的原則,包括保持語言的精練簡單。委員會的用意不是在C語言中添加新特性,而是為了達到新的目標。

  • 第1個目標是,支持國際化編程。例如,提供多種方法處理國際字符集。
  • 第2個目標是,“調(diào)整現(xiàn)有實踐致力于解決明顯的缺陷”。因此,在遇到需要將C移至64位處理器時,委員會根據(jù)現(xiàn)實生活中處理問題的經(jīng)驗來添加標準。
  • 第3個目標是,為適應(yīng)科學和工程項目中的關(guān)鍵數(shù)值計算,提高C的適應(yīng)性,讓C比FORTRAN更有競爭力。

這3點(國際化、彌補缺陷和提高計算的實用性)是主要的修訂目標。在其他方面的改變則更為保守,例如,盡量與C90、C++兼容,讓語言在概念上保持簡單。用委員會的話說:“……委員會很滿意讓C++成為大型、功能強大的語言”。C99的修訂保留了C語言的精髓,C仍是一門簡潔高效的語言。本書指出了許多C99修改的地方。雖然該標準已發(fā)布了很長時間,但并非所有的編譯器都完全實現(xiàn)C99的所有改動。因此,你可能發(fā)現(xiàn)C99的一些改動在自己的系統(tǒng)中不可用,或者只有改變編譯器的設(shè)置才可用。

3)C11標準

維護標準任重道遠。標準委員會在2007年承諾C標準的下一個版本是C1X,2011年終于發(fā)布了C11標準。此次,委員會提出了一些新的指導(dǎo)原則。出于對當前編程安全的擔憂,不那么強調(diào)“信任程序員”目標了。而且,供應(yīng)商并未像對C90那樣很好地接受和支持C99。這使得C99的一些特性成為C11的可選項。因為委員會認為,不應(yīng)要求服務(wù)小型機市場的供應(yīng)商支持其目標環(huán)境中用不到的特性。另外需要強調(diào)的是,修訂標準的原因不是因為原標準不能用,而是需要跟進新的技術(shù)。例如,新標準添加了可選項支持當前使用多處理器的計算機。

分享到:
標簽:語言
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨大挑戰(zhàn)2018-06-03

數(shù)獨一種數(shù)學游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數(shù)有氧達人2018-06-03

記錄運動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定