首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么是C17,对语言做了哪些修改?

什么是C17,对语言做了哪些修改?
EN

Stack Overflow用户
提问于 2017-11-28 10:57:02
回答 2查看 37K关注 0票数 79

当我查看GCC 8的新闻时,我锯子他们增加了对2017年C语言版本的支持(不是C++17,真正的C17)。但我在网上找不到任何关于它的信息。

是像C11那样的新的C11版本,还是GCC团队在编译器中修改的代码?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-11-28 11:05:26

根据GCC参考,C17实际上是一个bug修复版C11标准的,并集成了DR分辨率。

C17,一个错误修正版的C11标准,与DR缺陷报告解决方案集成了,不久将进行投票。此修补程序添加了相应的选项-std=c17-std=gnu17 (新的默认版本,替换-std=gnu11为默认版本),-std=iso9899:2017。作为该标准的bug修复版本,不需要使用flag_isoc17或任何兼容性警告选项;但是,存在一个新的__STDC_VERSION__值,因此添加了新的cpplib语言CLK_GNUC17CLK_STDC17,以支持在新选项中使用该新值。(如果该标准最终于2018年发布,并被称为C18,则可以添加选项别名。但是请注意,-std=iso9899:199409对应的是__STDC_VERSION__值,而不是发布日期。) ( GCC有几项决议需要执行,但这与新方案无关。)

因此,C17中没有新的特性。

(C类历史)说:

未来发展 C17下一次小C语言标准修订版,将包括所有公认的C11缺陷报告,但没有新的特性

更新:

  • 2018年: C17 (ISO/IEC9899:2018) (ISO Store) (终稿)包括对ATOMIC_VAR_INIT的弃用和对下列缺陷报告的修复:

[博士400][401博士][402博士][403博士][404博士][405博士][406博士][博士407][410博士][412博士][414博士][415博士][博士416][417博士][博士419][423博士][426博士][428博士][博士429][430博士]C62,C63,[博士434],<>代码c65/code>,代码>代码>代码,代码,代码,代码<,代码>,代码>,代码>>>,<代码>><>代码>><>代码>><>代码>><>代码>><>C62><>C62<>C 63>>C>代码><>>代码><>C><>代码><>C>>><>代码><>C>><>><>C><代码代码>代码>代码>[博士448][450博士][博士452][博士453][博士457][博士458][博士459][460博士][博士462][博士464][465博士][博士468][470博士][博士471][博士472][博士473][博士475][477博士][480博士][博士481][485博士],C 94代码,c 95代码。

票数 65
EN

Stack Overflow用户

发布于 2018-10-09 13:26:47

C17是"M.S Chaudhari“注意到的C标准的”错误修正版“。然而,有非常有用的信息准备由Jens Gustedt的作者,"Modern C"的书。

他确定了C17C11相比的以下更改列表

  • 原子初始化(7.17.2,7.31.8),一致性要求(5.1.2.4),栅栏(7.17.3 p11),函数或宏(7.17.1 p6),无锁依赖于类型(7.17.5 p3),比较exchange比较内存和非值(7.17.7.3)旗帜(7.17.18)
  • 线程: 虚假故障(7.26.3.5 p2,7.26.3.6 p2,7.26.4.5 p3),同步(7.26.4 p1),线程特定存储(tss_t)和线程退出(7.26.5 p3,7.26.5.5,7.26.6)
  • 、铸造(6.5.4)
  • 对准:基本对准(6.2.8),_Alignas (6.7.5),aligned_alloc (7.22.3.1)
  • 序列点:满表达式(6.8p4),完整声明器(6.7.6 p3)
  • 无限环 (6.8.5 p6)
  • 保留标识符 (7.1.3)
  • 域或范围误差 (7.12.1),ilogberfclgamma
  • clock的低规格化(7.27.2.1)
  • 尺寸为0的realloc的低规格(7.22.3.5)
  • 附件F: FLT_ROUNDS (F.2 p1)
  • 附件K: tmpnam_ssnprintf_ssprintf_svsprintf_sget_smbstowcs_swcstombs_ssnwprintf_sswprintf_svsnwprintf_s、<>D78、D 79D80。

链接到主页C17

另外,这个内容将由Jens更新,您可以在这里进行牛仔裤Gustedt博客更新。

P.S: before posting all this stuff I received approval from the author.

票数 33
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47529854

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档