Gcc缺省使用的C/C++版本

GCC(GNU Compiler Collection)不同版本默认使用的 C 语言标准随着版本的变化而有所不同。以下是主要 GCC 版本的默认 C 语言标准:

GCC 版本默认 C 语言标准
GCC 2.xC89(ANSI C)
GCC 3.xC89(ANSI C)
GCC 4.xC89(ANSI C),但部分版本支持 gnu89
GCC 5.xgnu89(GNU C89,带 GNU 扩展)
GCC 6.xgnu11(GNU C11,带 GNU 扩展)
GCC 7.xgnu11
GCC 8.xgnu11
GCC 9.xgnu11
GCC 10.xgnu17(GNU C17,带 GNU 扩展)
GCC 11.xgnu17
GCC 12.xgnu17
GCC 13.xgnu17

说明:

  • gnuXX 标准(如 gnu89, gnu11, gnu17)表示基于 cXX 标准,但增加了一些 GNU 扩展特性。
  • c89, c99, c11, c17, c23 等表示标准 C 语言(不带 GNU 扩展)。
  • 你可以通过 gcc -vgcc -dumpversion 查看 GCC 版本,并使用 gcc -E -dM - < /dev/null | grep __STDC_VERSION__ 确认默认的 __STDC_VERSION__ 值。
  • 要指定不同的 C 标准,可以使用 -std=cXX-std=gnuXX 选项,如:
    gcc -std=c99 myfile.c -o myfile
    

/home/mi gcc -E -dM - < /dev/null | grep __STDC_VERSION__
#define __STDC_VERSION__ 201710L/home/mi 

这条命令的输出:

#define __STDC_VERSION__ 201710L

表示 GCC 默认使用的 C 语言标准C17(ISO/IEC 9899:2018)

解释:

  1. gcc -E -dM - < /dev/null

    • -E:只进行预处理,不进行编译。
    • -dM:输出所有的宏定义(包括 GCC 预定义的宏)。
    • - < /dev/null:输入空文件(即不处理任何源代码,只打印 GCC 预定义的宏)。
  2. grep __STDC_VERSION__

    • 过滤出 __STDC_VERSION__ 这个宏,它表示 C 语言标准的版本。
  3. __STDC_VERSION__ 的值:

    • 199409L → C94(C89 + C95 修订)
    • 199901L → C99
    • 201112L → C11
    • 201710L → C17(GCC 10+ 默认)
    • 202311L → C23(如果支持)

你的 GCC 版本默认使用 gnu17(GNU C17)标准,因为 GCC 10 及以上版本的默认 C 标准是 gnu17(即 C17 + GNU 扩展)。你可以用以下命令确认你的 GCC 版本:

gcc --version

如果你想切换到其他 C 语言标准,可以使用 -std= 选项:

gcc -std=c99 myfile.c -o myfile  # 使用 C99
gcc -std=c11 myfile.c -o myfile  # 使用 C11
gcc -std=c17 myfile.c -o myfile  # 使用 C17
gcc -std=c23 myfile.c -o myfile  # 使用 C23(如果支持)

参考链接:

  • 所有Gcc版本对C和C++的支持情况(超详细版本)
  • https://gcc.gnu.org/releases.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/13164.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何在自己电脑上私有化部署deep seek

要在自己的电脑上私有化部署 DeepSeek&#xff0c;通常需要以下步骤&#xff1a; 1. 环境准备 操作系统&#xff1a;确保你的电脑操作系统支持 Docker 或直接安装 Python 环境&#xff08;如 Linux、Windows 或 macOS&#xff09;。 Python 环境&#xff1a;安装 Python 3.7 …

【办公类-99-01】20250201学具PDF打印会缩小一圈——解决办法:换一个PDF阅读器

背景需求&#xff1a; 2024年1月13日&#xff0c;快要放寒假了&#xff0c;组长拿着我们班的打印好的一叠教案来调整。 “前面周计划下面的家园共育有调整&#xff0c;你自己看批注。” “还有你这个教案部分的模版有问题&#xff0c;太小&#xff08;窄&#xff09;了。考虑…

k8s集群

文章目录 项目描述项目环境系统与软件版本概览项目步骤 环境准备IP地址规划关闭selinux和firewall配置静态ip地址修改主机名添加hosts解析 项目步骤一、使用kubeadm安装k8s单master的集群环境&#xff08;1个master2个node节点&#xff09;1、互相之间建立免密通道2.关闭交换分…

HTTP和HTTPS协议详解

HTTP和HTTPS协议详解 HTTP详解什么是http协议http协议的发展史http0.9http1.0http1.1http2.0 http协议的格式URI和URL请求request响应response http协议完整的请求与响应流程 HTTPS详解为什么使用HTTPSSSL协议HTTPS通信过程TLS协议 HTTP详解 什么是http协议 1、全称Hyper Tex…

2025开源DouyinLiveRecorder全平台直播间录制工具整合包,多直播同时录制、教学直播录制、教学视频推送、简单易用不占内存

一、DouyinLiveRecorder软件介绍&#xff08;文末提供下载&#xff09; 官方地址&#xff1a;GitHub - ihmily/DouyinLiveRecorder 本文信息来源于作者GitHub地址 一款简易的可循环值守的直播录制工具&#xff0c;基于FFmpeg实现多平台直播源录制&#xff0c;支持自定义配置录制…

学习threejs,pvr格式图片文件贴图

&#x1f468;‍⚕️ 主页&#xff1a; gis分享者 &#x1f468;‍⚕️ 感谢各位大佬 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍⚕️ 收录于专栏&#xff1a;threejs gis工程师 文章目录 一、&#x1f340;前言1.1 ☘️PVR贴图1.2 ☘️THREE.Mesh…

Beans模块之工厂模块注解模块CustomAutowireConfigurer

博主介绍&#xff1a;✌全网粉丝5W&#xff0c;全栈开发工程师&#xff0c;从事多年软件开发&#xff0c;在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战&#xff0c;博主也曾写过优秀论文&#xff0c;查重率极低&#xff0c;在这方面有丰富的经验…

(一)DeepSeek大模型安装部署-Ollama安装

大模型deepseek安装部署 (一)、安装ollama curl -fsSL https://ollama.com/install.sh | sh sudo systemctl start ollama sudo systemctl enable ollama sudo systemctl status ollama(二)、安装ollama遇到网络问题&#xff0c;请手动下载 ollama-linux-amd64.tgz curl -L …

使用Pygame制作“贪吃蛇”游戏

贪吃蛇 是一款经典的休闲小游戏&#xff1a;玩家通过操控一条会不断变长的“蛇”在屏幕中移动&#xff0c;去吃随机出现的食物&#xff0c;同时要避免撞到墙壁或自己身体的其他部分。由于其逻辑相对简单&#xff0c;但可玩性和扩展性都不错&#xff0c;非常适合作为新手练习游戏…

【prompt实战】AI +OCR技术结合ChatGPT能力项目实践(BOL提单识别提取专家)

本文原创作者:姚瑞南 AI-agent 大模型运营专家,先后任职于美团、猎聘等中大厂AI训练专家和智能运营专家岗;多年人工智能行业智能产品运营及大模型落地经验,拥有AI外呼方向国家专利与PMP项目管理证书。(转载需经授权) 目录 1. 需求背景 2. 目标 3. BOL通用处理逻辑…

dl学习笔记(8):fashion-mnist

过完年懒羊羊也要复工了&#xff0c;这一节的内容不多&#xff0c;我们接着上次的fashion-mnist数据集。 首先第一步就是导入数据集&#xff0c;由于这个数据集很有名&#xff0c;是深度学习的常见入门数据集&#xff0c;所以可以在库里面导入。由于是图像数据集所以&#xff…

【Rust自学】20.2. 最后的项目:多线程Web服务器

说句题外话&#xff0c;这篇文章非常要求Rust的各方面知识&#xff0c;最好看一下我的【Rust自学】专栏的所有内容。这篇文章也是整个专栏最长&#xff08;4762字&#xff09;的文章&#xff0c;需要多次阅读消化&#xff0c;最好点个收藏&#xff0c;免得刷不到了。 喜欢的话…

Android学习21 -- launcher

1 前言 之前在工作中&#xff0c;第一次听到launcher有点蒙圈&#xff0c;不知道是啥&#xff0c;当时还赶鸭子上架去和客户PK launcher的事。后来才知道其实就是安卓的桌面。本来还以为很复杂&#xff0c;毕竟之前接触过windows的桌面&#xff0c;那叫一个复杂。。。 后面查了…

[创业之路-276]:从燃油汽车到智能汽车:工业革命下的价值变迁

目录 前言&#xff1a; 从燃油汽车到智能汽车&#xff1a;工业革命下的价值变迁 前言&#xff1a; 燃油汽车&#xff0c;第一次、第二次工业革命&#xff0c;机械化、电气化时代的产物&#xff0c;以机械和电气自动化为核心价值。 智能汽车&#xff0c;第三次、第四次工业革…

Spring Boot - 数据库集成07 - 数据库连接池

数据库连接池 文章目录 数据库连接池一&#xff1a;知识准备1&#xff1a;什么是数据库连接池&#xff1f;2&#xff1a;数据库连接池基本原理 二&#xff1a;HikariCP连接池1&#xff1a;简单使用2&#xff1a;进一步理解2.1&#xff1a;是SpringBoot2.x默认连接池2.2&#xf…

Python-基于PyQt5,Pillow,pathilb,imageio,moviepy,sys的GIF(动图)制作工具

前言&#xff1a;在抖音&#xff0c;快手等社交平台上&#xff0c;我们常常见到各种各样的GIF动画。在各大评论区里面&#xff0c;GIF图片以其短小精悍、生动有趣的特点&#xff0c;被广泛用于分享各种有趣的场景、搞笑的瞬间、精彩的动作等&#xff0c;能够快速吸引我们的注意…

使用线性回归模型逼近目标模型 | PyTorch 深度学习实战

前一篇文章&#xff0c;计算图 Compute Graph 和自动求导 Autograd | PyTorch 深度学习实战 本系列文章 GitHub Repo: https://github.com/hailiang-wang/pytorch-get-started 使用线性回归模型逼近目标模型 什么是回归什么是线性回归使用 PyTorch 实现线性回归模型代码执行结…

【蓝桥杯嵌入式】2_LED

1、电路图 74HC573是八位锁存器&#xff0c;当控制端LE脚为高电平时&#xff0c;芯片“导通”&#xff0c;LE为低电平时芯片“截止”即将输出状态“锁存”&#xff0c;led此时不会改变状态&#xff0c;所以可通过led对应的八个引脚的电平来控制led的状态&#xff0c;原理图分析…

尝试在Office里调用免费大语言模型的阶段性进展

我个人觉得通过api而不是直接浏览器客户端聊天调用大语言模型是使用人工智能大模型的一个相对进阶的阶段。 于是就尝试了一下。我用的是老师木 袁进辉博士新创的硅基流动云上的免费的大模型。——虽然自己获赠了不少免费token&#xff0c;但测试阶段用不上。 具体步骤如下&am…

LabVIEW自定义测量参数怎么设置?

以下通过一个温度采集案例&#xff0c;说明在 LabVIEW 中设置自定义测量参数的具体方法&#xff1a; 案例背景 ​ 假设使用 NI USB-6009 数据采集卡 和 热电偶传感器 监测温度&#xff0c;需自定义以下参数&#xff1a; 采样率&#xff1a;1 kHz 输入量程&#xff1a;0~10 V&a…