中文
Sign in
AI tools
聊天
热门问题
时间线
Loading AI tools
全部
文章
字典
引用
地图
C/C99
来自维基百科,自由的百科全书
Found in articles
C99
C99
(之前名稱為
C
9X)是ISO/IEC 9899:1999的非正式名稱,是
C
語言標準的一個版本。
C99
延伸了
C
90的內容,加入了
C
語言及標準函式庫的新功能,讓一些語言的實現(例如IEEE 754-1985(英语:IEEE_754-1985)浮點數,以及編譯器技術)可以更妥善的利用電腦的硬體。後
C11 (C语言标准)
C
11(也被称为
C
1X)指ISO标准ISO/IEC 9899:2011,在它之前的
C
语言标准为
C99
。这次修订新增了被主流
C
语言编译器(如GCC,Clang,Visual
C
++等)增加的内容,和引入了細部的内存模型以更好的执行多线程。之前
C99
的一些被推迟的计划在
C
11中增加了,但是对
C99
仍保留向后兼容。
Microsoft Visual C++
2013很大改进了对
C99
特性的支持。 Visual
C
++ 2015基本上完整支持了
C99
标准库,但需要编译器尚未支持的
C99
语言特性的那部分标准库除外。 至VC++2017 Version 15.7已经完全实现了
C
++17 详细情况见 Universal CRT (UCRT)包含了
C99
C++
C99
也纳入几个和
C
++冲突的新特性(如:可变长数组、原生复数类型和复合逐字常数),而
C
++11已经加入了兼容
C99
预处理器的特性。 由于
C
++函数和
C
函数通常具有不同的名字修饰和调用约定,所有在
C
++中呼叫的
C
函数,须放在extern "
C
" { /*
C
函数声明 */ }之內。
C与C++的兼容性
qualifier)。另一方面,与
C
89相比,
C99
通过合并
C
++功能(例如//注释,允许声明出现在代码中而不只是在函数头)减少了一些其他不兼容性。
C
++较
C
语言有更严格的类型转换和初始化规则 , 因此一些在
C
语言里合法的语句在
C
++里是不合法的。ISO
C
++附录
C
.1中列出了这些区别。 一个常见的区别是在
C