C語言標準

2021-10-10 17:48:40 字數 2211 閱讀 3620

語言標準(學習c語言另一分支)

目前,有許多c實現可用。在理想情況下,編寫c程式時,假設該程式中未使用機器特定的程式設計技

那麼它的運**況在任何實現中都應該相同。要在實踐中做到這一點,不同的實現要遵循同乙個標花

c語言發展之初,並沒有所謂的c標準。

2023年,布萊恩·柯林漢( brian kernighan)和丹尼斯·里奇( dennis ritchie)合著的 the c programming language(《c語言程式設計》)第1版是公認的c標準,通常稱之為k&rc或經典c。特別是,該書中的附錄中的「c語言參考手冊」已成為實現c的指導標準。例如,編譯器都聲稱提供完整的k&r實現。雖然這本書中的附錄定義了c語言,但卻沒有定義c庫。與大多數語言不同的是,c語言比其他語言更依賴庫,因此需要乙個標準庫。實際上,由於缺乏官方標準,unix實現提供的庫已成為了標準庫。

(1)第1個ans/soc標準

隨著c的不斷發展,越來越廣泛地應用於更多系統中,c社群意識到需要乙個更全面、更新穎、更嚴

格的標準。鑑於此,國國家標準協會(ansi於2023年組建了乙個委員會(x311),開發了一套新標

該標準( ansi c)定義了c語言和c標準庫。國際標準化組織於2023年採用並於2023年正式公了這套c標準(isoc)。isoc和 ansic是完全相同的標準。 ansiiso標準的最終版本通常叫作c89(因為ansi於2023年批准該標準)或c90(因為iso於2023年批准該標準)。另外,曲於ansi先公布c標準,因此業界人士通常使用 ansic

在該委員會制定的指導原則中,最有趣的可能是:保持c的精神。委員會在表述這一精神時列出了以

下幾點:

■信任程式設計師

■不要妨礙程式設計師做需要做的事

■保持語言精練簡單

■只提供一種方法執行一項操作

■讓程式執行的更快,即使不能保證其可移植性

在最後一點上,標準委員會的用意是:作為實現,應該針對目標計算機來定義最合適的某特定操作

而不是強加乙個抽象、統一的定義。在學習c語言過程中,許多方面都反映了這一哲學思想

2023年, ansiiso聯合委員會(c9x委員會)開始修訂c標準,最終發布了c99標準。該委員會通

(2)c99標準

循了最初c90標準的原則,包括保持語言的精練簡單。委員會的用意不是在c語言中新增新特性,而是為

了達到新的目標。第1個目標是,支援國際化程式設計。例如,提供多種方法處理國際字符集。第2個目標是

「調整現有實踐致力於解決明顯的缺陷」。因此,在遇到需要將c移至64位處理器時,委員會根據現實生

活中處理問題的經驗來新增標準。第3個目標是,為適應科學和工程專案中的關鍵數值計算,提高c的適

這3點(國際化、彌補缺陷和提高計算的實用性)是主要的修訂目標。在其他方面的改變則更為保守

應性,讓c比 fortran更有競爭力。

這3點(國際化、彌補缺陷和提高計算的實用性)是主要的修訂目標。在其他方面的改變則更為保守,例如,盡量與c90、c++相容,讓語言在概念上保持簡單。用委員會的話說:「……委員會很滿意讓c++成為大型、功能強大的語言

c99的修訂保留了c語言的精髓,c仍是一門簡潔高效的語言。本書指出了許多c99修改的地方。雖

然該標準已發布了很長時間,但並非所有的編譯器都完全實現c99的所有改動。因此,你可能發現cy的1

些改動在自己的系統中不可用,或者只有改變編譯器的設定才可用。

(3)c11標準

維護標準任重道遠。標準委員會在2023年承諾c標準的下乙個版本是c1x,2023年終於發布了c1

標準。此次,委員會提出了一些新的指導原則。出於對當前程式設計安全的擔憂,不那麼強調「信任程式設計師

目標了。而且,**商並未像對c90那樣很好地接受和支援c99。這使得c99的一些特性成為c11的可

選項。因為委員會認為,不應要求服務小型機市場的**商支援其目標環境中用不到的特性。另外需要

強調的是,修訂標準的原因不是因為原標準不能用,而是需要跟進新的技術。例如,新標準新增了可選

項支援當前使用多處理器的計算機。對於c11標準,我們淺嘗輒止,深入分析這部分內容已超出討

論的範圍。

今天講的就是了解的東西,

每博一圖

這個是投票程式,

例子

感謝你們的學習夥伴們下博見

C語言標準

寫在前面 k r c不用說。個人以為,我們平常說的標準c,指的是ansi c,iso c,c89,c90。k r c ansi c和iso c c 的第乙個標準是由ansi發布的。雖然這份文件後來被國際標準化組織 iso 採納並且iso發布的修訂版也被ansi採納了,但名稱ansi c 而不是 is...

C語言標準

c語言標準 寫在前面 k r c不用說。個人以為,我們平常說的標準c,指的是ansi c,iso c,c89,c90。k r c 1978年,丹尼斯 里奇 dennis ritchie 和布萊恩 柯林漢 brian kernighan 合作出版了 c程式語言 的第一版。書中介紹的c語言標準也被c語言...

標準C語言

1 檔案相關 建立檔案 touch 檔名 原本是用來修改檔案屬性的,但如果檔案不存在 會自動把檔案建立出來。刪除檔案 rm 檔名 此命令刪除時不經過 站,檔案恢復困難。複製檔案 cp 原始檔 目標位置 在複製過程中可以修改檔名。移植檔案 mv 原始檔 目標位置 用法與cp基本一致,區別是cp原始檔還...