1967年,劍橋大學(xué)的MartinRichards對CPL語言進行了簡化,于是產(chǎn)生了BCPL(BasicCombinedProgrammingLanguage)語言。

c語言宣傳圖

20世" />

国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

15158846557 在線咨詢 在線咨詢
15158846557 在線咨詢
所在位置: 首頁 > 營銷資訊 > 信息時代 > c語言發(fā)展歷史

c語言發(fā)展歷史

時間:2022-02-18 20:15:01 | 來源:信息時代

時間:2022-02-18 20:15:01 來源:信息時代

C語言之所以命名為C,是因為C語言源自KenThompson發(fā)明的B語言,而B語言則源自BCPL語言。

1967年,劍橋大學(xué)的MartinRichards對CPL語言進行了簡化,于是產(chǎn)生了BCPL(BasicCombinedProgrammingLanguage)語言。

c語言宣傳圖

20世紀60年代,美國ATi<100; i)的形式,即i只在for語句塊內(nèi)部有效。

允許采用(type_name){xx,xx,xx}類似于C 的構(gòu)造函數(shù)的形式構(gòu)造匿名的結(jié)構(gòu)體。

復(fù)合字面量:初始化結(jié)構(gòu)的時候允許對特定的元素賦值,形式為:

structtest{inta,b;}foo={.a={1},.a=2};

structtest{inta,b,c,d;}foo={.a=1,.c=3,4,.b=5};//3,4是對.c,.d賦值的

格式化字符串中,利用u支持unicode的字符。

支持16進制的浮點數(shù)的描述。

printfscanf的格式化串增加了對longlongint類型的支持。

浮點數(shù)的內(nèi)部數(shù)據(jù)描述支持了新標準,可以使用#pragma編譯器指令指定。

除了已有的__line____file__以外,增加了__func__得到當(dāng)前的函數(shù)名。

允許編譯器化簡非常數(shù)的表達式。

修改了/%處理負數(shù)時的定義,這樣可以給出明確的結(jié)果,例如在C89中-22/7=-3,-22%7=-1,也可以-22/7=-4,-22%7=6。而C99中明確為-22/7=-3,-22%7=-1,只有一種結(jié)果。

取消了函數(shù)返回類型默認為int的規(guī)定。

允許struct定義的最后一個數(shù)組不指定其長度,寫做(flexiblearraymember)。

constconstinti將被當(dāng)作constinti處理。

增加和修改了一些標準頭文件,比如定義bool的,定義一些標準長度的int的,定義復(fù)數(shù)的,定義寬字符的,類似于泛型的數(shù)學(xué)函數(shù),浮點數(shù)相關(guān)的。在增加了va_copy用于復(fù)制...的參數(shù)。里增加了structtmx,對structtm做了擴展。

輸入輸出對寬字符以及長整數(shù)等做了相應(yīng)的支持。

GCC和其它一些商業(yè)編譯器支持C99的大部分特性。

C11標準

新的標準提高了對C 的兼容性,并增加了一些新的特性。這些新特性包括:

對齊處理(Alignment)的標準化(包括_Alignas標志符,alignof運算符,aligned_alloc函數(shù)以及頭文件。

_Noreturn函數(shù)標記,類似于gcc的__attribute__((noreturn))。

_Generic關(guān)鍵字。

多線程(Multithreading)支持,包括:

_Thread_local存儲類型標識符,頭文件,里面包含了線程的創(chuàng)建和管理函數(shù)。

_Atomic類型修飾符和頭文件。

增強的Unicode的支持。基于CUnicode技術(shù)報告ISO/IECTR19769:2004,增強了對Unicode的支持。包括為UTF-16/UTF-32編碼增加了char16_t和char32_t數(shù)據(jù)類型,提供了包含unicode字符串轉(zhuǎn)換函數(shù)的頭文件.

刪除了gets()函數(shù),使用一個新的更安全的函數(shù)gets_s()替代。

增加了邊界檢查函數(shù)接口,定義了新的安全的函數(shù),例如fopen_s(),strcat_s()等等。

增加了更多浮點處理宏。

匿名結(jié)構(gòu)體/聯(lián)合體支持。這個在gcc早已存在,C11將其引入標準。

靜態(tài)斷言(staticAssertions),_Static_Assert(),在解釋#if和#error之后被處理。

新的fopen()模式,('…x')。類似POSIX中的O_CREAT|O_EXCL,在文件鎖中比較常用。

新增quick_exit()函數(shù)作為第三種終止程序的方式。當(dāng)exit()失敗時可以做最少的清理工作。

關(guān)鍵詞:發(fā)展,歷史,語言

74
73
25
news

版權(quán)所有? 億企邦 1997-2025 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點擊下載Chrome瀏覽器
關(guān)閉