gcc默认的c语言标准是,当前GCC的默认C -std标准版本是什么(尤其是在Ubuntu上)?

GCC的默认C语言标准在不同版本间有所变化。例如,Ubuntu 4.7.2上的cc默认等效于-std=gnu90,即1990标准加上GNU扩展。到了GCC 5.4.0,C语言的默认标准变为-std=gnu11。在更现代的GCC版本中,如6.3.1到7.3.1,C语言的默认标准依然为-std=gnu11,而C++从-std=gnu++98升级到-std=gnu++14。通过-std参数,开发者可以明确指定C/C++的合规标准。
摘要由CSDN通过智能技术生成

问题描述

当我要求查看cc的当前版本时,我得到了。

$ cc --version

cc (Ubuntu/Linaro 4.7.2-2ubuntu1) 4.7.2

Copyright (C) 2012 Free Software Foundation, Inc.

This is free software; see the source for copying conditions. There is NO

warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

$

我想知道的是使用的是c89,c90,c99或c11。

最佳回答

在gcc手册(如果已安装)中,通过键入info gcc或在线here对其进行了详细说明。 4.7.2手册的相关部分为here。

默认情况下,gcc不符合任何ANSI /ISO C标准。当前默认值等效于-std=gnu90,这是1989/1990标准,扩展名为GNU-specific。 (未发布语言标准要求的某些诊断。)2015年4月22日发布的5.1.0版将默认值从-std=gnu90更改为-std=gnu11,as documented here。

如果要实现标准一致性,可以使用以下任意一种:

-std=c90 -pedantic

-std=c99 -pedantic

-std=c11 -pedantic

-std=c90也可以拼写为-ansi,-std=c89或-std=iso9899:1990。

-std=iso9899:199409支持C90

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值