A. c11是什么意思
C11标准是 ISO/IEC 9899:2011 - Information technology -- Programming languages -- C 的简称,曾用名为C1X。
C11标准是C语言标准的第三版,前一个标准版本是C99标准。2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC) 旗下的C语言标准委员会(ISO/IEC JTC1/SC22/WG14)正式发布了C11标准。
名词解释:
C11标准的最终定稿的草案是免费开放的,为N1570 [3] ,但是正式标准文件需要198瑞士法郎。
当前,支持此标准的主流C语言编译器有:GCC、Clang、Intel C++ Compiler等。
对IEEE754标准-2008的半精度浮点数的支持。尽管遵循GNU C标准规范的编译器(GCC以及Clang等)使用了C扩展关键字__fp16,但是只能对半精度浮点数进行引用,而不能做任何算术操作。因此,这个特性应当在下一个C语言标准中立马加入进去的,建议使用_Half作为半精度浮点数类型的关键字。
B. c语言现行标准
在2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)联合发布了C语言的新标准,命名为ISO/IEC9899:2011-Informationtechnology--rogramminglanguages--C,简称C11标准,其前身为C1X标准。这一标准标志着C语言进入了其第三个官方标准阶段,同时也是最新版本。
C11标准在原有C语言的基础上进行了多项改进和优化,旨在提升语言的性能、可移植性和安全性。它引入了新的特性,如静态断言、线程支持、多线程内存模型、原子操作、复合文学、字符字面量、复合类型等。这些新增特性为开发者提供了更多的工具,以便更好地开发高效且安全的应用程序。
此外,C11标准还对原有的一些特性进行了改进和完善。例如,它定义了新的文件操作函数,使得文件操作更加方便;它还改进了浮点数的处理方式,增强了浮点数的精度和性能;同时,它还引入了新的数学函数,使得数学运算更加精确和高效。
值得注意的是,C11标准不仅在功能上有所扩展,还在其他方面进行了改进。例如,它引入了新的错误处理机制,使得程序在遇到错误时能够更加优雅地处理;它还引入了新的编译器诊断机制,使得开发者更容易发现和修正代码中的错误。
总之,C11标准是C语言发展的重要里程碑。它不仅为开发者提供了更多的工具,还提高了C语言的性能和安全性。随着技术的不断发展,我们期待C语言在未来能有更多的创新和改进。
C. C语言编译器是什么
C语言是一门面向过程的计算机编程语言,与C++、Java等面向对象编程语言有所不同。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、仅产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。C语言描述问题比汇编语言迅速,工作量小、可读性好,易于调试、修改和移植,而代码质量与汇编语言相当。C语言一般只比汇编语言代码生成的目标程序效率低10%~20%。因此,C语言可以编写系统软件。[2]
二十世纪八十年代,美国国家标准局为了避免各开发厂商用的C语言语法产生差异,给C语言制定了一套完整的美国国家标准语法,称为ANSI C。作为C语言最初的标准。[3]2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。
C语言编译器普遍存在于各种不同的操作系统中,例如Microsoft Windows, Mac OS X, Linux, Unix等。C语言的设计影响了众多后来的编程语言,例如C++、Objective-C、Java、C#等。
例:
#include <stdio.h>
int main() {
printf("Hello,world!");
return 0;
}
编译运行将输出: Hello,world!
D. C89,C99,C11等C语言标准是干吗的
C语言的标准就是定义任何一个支持该标准的C语言编译器必须支持的语法和必须提供的库。新的标准是在旧标准的基础上进行扩展,一般都是向后兼容的。
不过现在的编译器对C语言标准的支持不太积极(主要精力放在C++上面),比如VC++编译器只是部分支持了C99,所以新的C语言标准不太实用,你最好还是好好学习C89标准,现在的C语言教程一般都是以这个标准。