C2x 将成为 C 语言的下一个 ISO 标准

栏目: C++ · 发布时间: 5年前

内容简介:预计将于 2022 年完成的 C2x 标准在Gustedt 最近总结了委员会到目前为止的工作成果,发布了新标准的新 C 标准的制定主要是为了完善一些目标,详见章程。关键点是这个标准旨在描述现有的实践,而不是发明本身。只要有可能,发明应该在现有的 C 编译器中进行,或者来自其他编程语言(事实上主要是 C++)。也就是说,还有很多工作将清理现有的特性,追求语义上的模糊性,并添加可能有助于日常编码的小特性。
C2x 将成为 C 语言的下一个 ISO 标准

预计将于 2022 年完成的 C2x 标准在 C 委员会 的推动下一直在演化。 Jens Gustedt,他正在委员会内部推进新标准,他还是即将出版的新书“ Modern C ”的作者。

Gustedt 最近总结了委员会到目前为止的工作成果,发布了新标准的 第一份工作草案 。除了当前的 C17 标准 相关工作,其他工作主要针对错误修复,C2x 将包含旨在改进语言本身的规范性变更。

新 C 标准的制定主要是为了完善一些目标,详见章程。关键点是这个标准旨在描述现有的实践,而不是发明本身。只要有可能,发明应该在现有的 C 编译器中进行,或者来自其他编程语言(事实上主要是 C++)。也就是说,还有很多工作将清理现有的特性,追求语义上的模糊性,并添加可能有助于日常编码的小特性。

在语言和库级别,程序员直接可见的部分目前还没有太多定论。我的期望是我们将看到一些集成到 C 中的 C++ 特性,例如属性、以某种形式编译所有数据类型的时间常量,以及初始化类型(也就是 C++ 的 auto feature)。此外,还有一个 C++ 的协调计划,用于新的调用约定,它可以取代我们从一开始就一直在使用的错误码返回约定。有几个人确保与 C++ 委员会保持紧密合作,他们在这些问题上处理得很好。

但是 C 标准还有另一个重要的作用,因为它基本上为我们的计算机架构和其他编程语言构建设置了机器模型。C 标准将其称为“抽象状态机”。作为一个重要的特性,我们已经投票将最新的 IEEE 浮点规范集成到 C 标准中。我们还组建了一个工作组来修改“内存模型”,事关 程序员 可能会或者可能不会直接与计算机内存中数据裸表示交互、这可能将如何影响一些可能的优化以及这种字节和位的调整将如何变得安全可靠。这项工作遵循的是 Peter Sewell(等人)关于“指针来源”的论文,我们希望我们最终得到的内存模型可以广泛适用于 C 系统软件和应用程序的多样性。

C 最大的优点是效率、可移植性和稳定性。只要这些是软件开发当中存在的主要问题,那么 C 就应该被视为首选语言。

效率:在这里,效率可能是指一些非常不一样的东西:能量和内存效率(适用于小型或便携式设备、卫星),运行时效率(适用于中型或大型计算密集型计算)或速度(适用于科学可视化、游戏或网络通信 )。C 在这些领域的效率是无与伦比的,其他编程语言倾向于引入大量的内存间接、动态行为,从而遏制了效率。

可移植性:C 的抽象状态机旨在可移植到任何计算设备上。这个概念带来了很大的好处:通常为新 CPU 开发的第一批软件组件就是 C 编译器。因此,用 C 编写的代码,特别是操作系统和其他系统软件,可以进行快速的移植。大量的软件项目从中受益,Linux 发行版是数千个软件包的集合,这些软件包可以很容易地移植到新架构上,并与现有主流平台的发展保持同步。

稳定性:C 委员会致力于保证用户代码库的稳定性。你现在编写的 C 代码仍然可以在 20 年后仍然可以编译和运行。80 年代或 90 年代写的代码今天仍然可以使用。此外,C 还提供了一系列有限的特性,这些特性在工程学院的研究生阶段就应该掌握。因此,在数年甚至数十年后仍然可以保持可维护性。在 C 语言中,“遗留”有着不同的含义,好的 C 代码是真正的资产,而不是负担。

Gustedt 在法国国家计算机科学与控制研究所(INRIA)和 ICube 实验室工作,领导 ICPS(并行和科学计算)研究团队。


以上所述就是小编给大家介绍的《C2x 将成为 C 语言的下一个 ISO 标准》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

嗨翻C语言

嗨翻C语言

[美]David Griffiths、[美]Dawn Griffiths / 程亦超 / 人民邮电出版社 / 2013-9 / 99.00

你能从这本书中学到什么? 你有没有想过可以轻松学习C语言?《嗨翻C语言》将会带给你一次这样的全新学习 体验。本书贯以有趣的故事情节、生动形象的图片,以及不拘一格、丰富多样的练 习和测试,时刻激励、吸引、启发你在解决问题的同时获取新的知识。你将在快乐 的气氛中学习语言基础、指针和指针运算、动态存储器管理等核心主题,以及多线 程和网络编程这些高级主题。在掌握语言的基本知识......一起来看看 《嗨翻C语言》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

随机密码生成器
随机密码生成器

多种字符组合密码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具