0、c語言,2023年由dennis m. ritchie設計和實現。
1、k&r c。2023年由kernighan和ritchie合寫的書《the c programming language》,形成了c語言的事實的標準,簡稱為k&r c。
2、ansi c(c89或c90)。2023年,美國國家標準局(ansi)頒布了第乙個官方的c語言標準(x3.159-1989),簡稱為ansi c或c89;2023年,它被國際標準化組織(iso)採納國際標準(iso/iec9899:1990),簡稱為c90。這個標準是目前廣泛使用並完全支援的。
3、c99。199年,iso/ansi又推出了新的標準(iso9899:1999),簡稱c99。這個標準目前支援的可能還不太全面。
c89/c90標準的指導原則是:
1、相信程式設計師;
2、不妨礙程式設計師做需要完成的事情;
3、讓語言保持短小簡單;
4、只提供一種方法來執行一種操作;
5、使程式執行速度快,即使不能保證其可移植性。(不追求定義的抽象統一,更優先考慮執行效率)
c89/c90對k&r c的改變有:
0、增加了函式原型(prototype),強調對函式的輸入引數進行嚴格的型別檢查;並補充定義了c語言的標準函式庫
1、刪除了關鍵字:entry(條目/入口)
2、增加了關鍵字:const(常型變數)、enum(列舉型別)、signed(有符號的,例如signed char)、void(空/無,可用於函式返回值和形參、通用指標型別)、volatile(易變變數,防止編譯器錯誤的優化)
3、傳遞結構:允許將結構本身作為引數傳遞給函式(原來只允許傳位址)
4、函式原型:增加了函式原型(便於編譯器進行型別檢查)
5、增加了預處理指令:#elif(else if)、#error(錯誤,強制編譯停止)、#line(修改當前行號和源檔名)、#pragma(附註/編譯指令,編譯器定義的與實現有關的指令)
6、定義了固有巨集:__line__(當前行號)、__file__(源檔名)、__date__(當前系統日期)、__time__(當前系統時間)、__stdc__(標準c版時為1)
c99的修訂目標主要有三點:
1、支援國際化程式設計,引入了支援國際字符集unicode的資料型別和庫函式;
2、修正原有版本的明顯缺點。如整數的移植方法,例如int8_t、int16_t、int32_t和int64_t等型別;
3、針對科學和工程的需要,改進計算的實用性。例如新增了複數型別和新數學函式。
c99標準的新特性
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原始檔還...