當前位置:首頁 » 編程語言 » c語言的標準是多少
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言的標準是多少

發布時間: 2022-09-13 10:47:22

Ⅰ c程序語言現行標準是什麼標准

c語言現行最新標准為c11標准

2011年12月8日,國際標准化組織(ISO)和國際電工委員會(IEC)再次發布了C語言的新標准,名叫ISO/IEC 9899:2011 - Information technology -- Programming languages -- C ,簡稱C11標准,原名C1X。這是C語言的第三個官方標准,也是C語言的最新標准。

Ⅱ C語言在世界上有幾個標准

C語言的標准很多,這個問題沒有標准答案,但是通常所說的C語言標准一般指如下幾個:

  1. K&R C:這是Brian Kernighan 和 Dennis Ritchie 1987年合著的《C語言程序設計》中的C語言參考,也稱為"經典C"。

  2. ANSI C:這是1989年美國國家標准協會ANSI公布的標准

  3. ISO C:1990年國際標准化組織ISO採用ANSI C作為ISO標准。這個版本也稱為 C89或C90。因此ANSI C、ISO C、ANSI/ISO C、C89、C90實際上是一套東西。

  4. C99:ISO 1994年開始修訂新的標准,並最終發布了C99.

  5. C11:ISO 2007年開始修訂,並於2011年發布了新的標准,稱之為C11.

Ⅲ 標准C語言有哪些重要的規定

C語言最新的標準是ISO-IEC-9899-1999 Programming Language C,俗稱C99標准。
之前有ANSI C標准,俗稱C89,和一年後的ISO標准,俗稱C90

C++語言的最新標準是ISO/IEC 14882:2011 俗稱C++11
之前有C++03和C++98兩個標准。。

各標准間的語法細節變動是繁多的。像最新的C++11,現在最新的編譯器都沒有支持完全。只能做到60-70%的兼容。可以查詢這些俗稱的細節。

僅C++11改動細節,比如我之前回答的
//方法1 范圍遍歷(即使最新的Visual C++2012也不支持,需要gcc>4.6)
int sum=0;
for(int &i:a) sum+=i;
cout <<"總和1: "<<sum<<endl;

//方法3 遞歸 (lambda表達式 VC>=2010)
function<int(int*,int)>sumfunc=[&sumfunc](int *a,int l)->int{ return l>1?(*a)+sumfunc(a+1,l-1):*a;};
cout<<"總和3: "<<sumfunc(a,10)<<endl;

Ⅳ 當前C語言標准為ISO/IEC 9899:1999是嗎

C11

2011年12月8日,ISO正式發布了新的C語言的新標准C11,之前被稱為C1X,官方名稱為ISO/IEC 9899:2011。

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

對齊處理(Alignment)的標准化(包括_Alignas標志符,alignof運算符, aligned_alloc函數以及<stdalign.h>頭文件。
_Noreturn 函數標記,類似於 gcc 的 __attribute__((noreturn))。
_Generic 關鍵字。
多線程(Multithreading)支持,包括:_Thread_local存儲類型標識符,<threads.h>頭文件,裡麵包含了線程的創建和管理函數。
增強的Unicode的支持。基於C Unicode技術報告ISO/IEC TR 19769:2004,增強了對Unicode的支持。包括為UTF-16/UTF-32編碼增加了char16_t和char32_t數據類型,提供了包含unicode字元串轉換函數的頭文件<uchar.h>.
刪除了 gets() 函數,使用一個新的更安全的函數gets_s()替代。
增加了邊界檢查函數介面,定義了新的安全的函數,例如 fopen_s(),strcat_s() 等等。
增加了更多浮點處理宏。
匿名結構體/聯合體支持。這個在gcc早已存在,C11將其引入標准。
靜態斷言(Static assertions),_Static_assert(),在解釋 #if 和 #error 之後被處理。
新的 fopen() 模式,(「…x」)。類似 POSIX 中的 O_CREAT|O_EXCL,在文件鎖中比較常用。
新增 quick_exit() 函數作為第三種終止程序的方式。當 exit()失敗時可以做最少的清理工作。
_Atomic類型修飾符和<stdatomic.h>頭文件。

目前大多數的編譯系統並沒有完全的實現C11標准,主要還是以以前的C99標准為主流
你只要在網路中尋找關鍵字C11,就可以詳細查到該標准

Ⅳ C語言在世界上有幾個標准

最初是有ANSI C標准,然後ANSI把這個標准提交到ISO(畢竟ISO是國際化標准組織),ISO採納為國家標准。ISO C與ANSI C內容基本相同,主要是格式組織不一樣。這個標準是89年發布的,通常稱為C89.

99年ISO發布了新的C標准,通常稱為C99.

因為ANSI與ISO的C標准內容基本相同,所以對於C標准,可以稱為ANSI C,也可以說是ISO C,或者ANSI/ISO C。

此外沒有C標准。不存在什麼GNU C標准。

GNU計劃中含多個內容,其中包括開發C/C++編譯器。這個編譯器通常簡稱為GCC(GNU C/C++ compiler)

總而言之,ANSI/ISO C是語言標准。GCC是具體的編譯器,它必須符合ANSI/ISO C標準的要求。

Ⅵ C語言都有哪些標准和C++的是不是一樣

現在我們學的C語言都是ANSI C(ANSI是美國標准局),後來ANSI C標准被列為國際標准(ISO)。
ANSI C標准分為兩個標准——C89標准和C99標准,89和99都是指這個標准出現的年份。雖說C99是最新的標准,但並不普及,可以說目前還沒有符合C99的編譯器。

C和C++是不同的兩種語言,C++兼容C語言,但隨著C99的出現,C++變得並不完全兼容C語言。目前最新的C++標准為C++0x.

Ⅶ 現在的c語言標準是c99嗎

C99是標准ISO/IEC 9899:1999的簡稱。
2011年12月8號,ISO 發布了新的 C 語言的新標准——C11,之前被稱為C1X,官方名稱 ISO/IEC 9899:2011。
C11是目前最新的C語言標准。

Ⅷ C語言最新的標準是什麼

C11 12年推出的C11標準是最新的

Ⅸ 國際上C語言常見的三個標準是什麼

int printf(const char *format,[argument]);format 參數輸出的格式,定義格式為:%[flags][width][.perc][F|N|h|l]type規定數據輸出方式,具體如下: 1.type 含義如下: d 有符號10進制整數 i 有符號10進制整數 o 無符號8進制整數 u 無符號10進制整數 x 無符號的16進制數字,並以小寫abcdef表示X 無符號的16進制數字,並以大寫ABCDEF表示F\/f 浮點數 E\/e 用科學表示格式的浮點數 g 使用%f和%e表示中的總的位數表示最短的來表示浮點數 G 同g格式,但表示為指數 c 單個字元 s 字元串 % 顯示百分號本身 p 顯示一個指針,near指針表示為:XXXX far 指針表示為:XXXX:YYYY n 相連參量應是一個指針,其中存放已寫字元的個數 2.flags 規定輸出格式,取值和含義如下: 無 右對齊,左邊填充0和空格 - 左對齊,右邊填充空格 + 在數字前增加符號 + 或 -0 將輸出的前面補上0,直到占滿指定列寬為止(不可以搭配使用-)空格 輸出值為正時冠以空格,為負時冠以負號# 當type=c,s,d,i,u時沒有影響 type=o,x,X時,分別在數值前增加\'0\',"0x","0X"type=e,E,f時,總是使用小數點 type=g,G時,除了數值為0外總是顯示小數點3.width 用於控制顯示數值的寬度,取值和含義如下n(n=1,2,3...) 寬度至少為n位,不夠以空格填充 0n(n=1,2,3...) 寬度至少為n位,不夠左邊以0填充* 格式列表中,下一個參數還是width4.prec 用於控制小數點後面的位數,取值和含義如下: 無 按預設精度顯示 0 當type=d,i,o,u,x時,沒有影響 type=e,E,f時,不顯示小數點 n(n=1,2,3...) 當type=e,E,f時表示的最大小數位數 type=其他,表示顯示的最大寬度.* 格式列表中,下一個參數還是width5.F|N|h|l 表示指針是否是遠指針或整數是否是長整數 F 遠指針 n 近指針 h 短整數或單精度浮點數 l 長整數或雙精度浮點數\r\n