gcc

  • 软件大小:7.00MB
  • 软件类型:国产软件
  • 软件分类:编程工具
  • 软件语言:简体
  • 软件授权:免费软件
  • 支持系统:WinAll

gcc      gcc 8.3官方版是一款由 GNU 开发的编程语言编译器工具,即GNU Compiler Collection,GNU编译器套装。gcc 8.3官方版是一套以 GPL 及 LGPL许可证所发行的自由软件,亦是自由的类Unix 及苹果计算机 Mac OS X 操作系统的标准编译器。

gcc截图

相关软件 版本说明 下载地址
猿编程客户端 官方版 查看
Sublime Text 中文版 查看
JD-GUI 中文版 查看
vc++6.0 简体中文企业版 查看
软件介绍

      gcc 8.3官方版原名为 GNU C 语言编译器(GNU C Compiler),因为它原本只能处理 C语言。GCC 很快地扩展,变得可处理 C++。之后也变得可处理 Fortran、Pascal、Objective-C、Java, 以及 Ada 与其他语言,所以改名GNU编译器套件(GNU Compiler Collection)

gcc截图

软件功能

      1、gcc编译器以GPL及LGPL许可证所发行的自由软件;

      2、既能处理C语言,也能处理C++;

      3、支持Fortran、Pascal、Objective-C、Java,以及Ada与其他语言;

      4、gcc编译器支持跨windows、mac、linux等平台;

      5、可以透支和保存文件;

      6、可以解决一个共同的碰撞;

      7、可以进行解析器的越界。

软件结构

      GCC的外部接口长得像一个标准的Unix编译器。使用者在命令列下键入gcc之程序名,以及一些命令参数,以便决定每个输入档案使用的个别语言编译器,并为输出程序码使用适合此硬件平台的组合语言编译器,并且选择性地执行连接器以制造可执行的程序。每个语言编译器都是独立程序,此程序可处理输入的原始码,并输出组合语言码。全部的语言编译器都拥有共通的中介架构:一个前端解析符合此语言的原始码,并产生一抽象语法树,以及一翻译此语法树成为GCC的暂存器转换语言〈RTL〉的后端。编译器最佳化与静态程序码解析技术(例如FORTIFY_SOURCE,一个试图发现缓冲区溢位〈buffer overflow〉的编译器)在此阶段应用于程序码上。最后,适用于此硬件架构的组合语言程序码以Jack Davidson与Chris Fraser发明的算法产出。几乎全部的GCC都由C写成,除了Ada前端大部分以Ada写成。

基本规则

      gcc所遵循的部分约定规则:

      .c为后缀的文件,C语言源代码文件;

      .a为后缀的文件,是由目标文件构成的档案库文件;

      .C,.cc或.cxx 为后缀的文件,是C++源代码文件且必须要经过预处理;

      .h为后缀的文件,是程序所包含的头文件;

      .i 为后缀的文件,是C源代码文件且不应该对其执行预处理;

      .ii为后缀的文件,是C++源代码文件且不应该对其执行预处理;

      .m为后缀的文件,是Objective-C源代码文件;

      .mm为后缀的文件,是Objective-C++源代码文件;

      .o为后缀的文件,是编译后的目标文件;

      .s为后缀的文件,是汇编语言源代码文件;

      .S为后缀的文件,是经过预编译的汇编语言源代码文件。


使用说明

      安装了MinGW,在其根目录下的bin文件夹中发现有等文件。

      为了测试,我在该文件夹中新建了一个test.bat文件,将其中内容写为:

      gcc test.cpp

      然后在该文件夹中创建test.cpp文件并将其内容设置为:

gcc截图

      双击test.bat文件,发现该文件夹中产生了一个a.exe文件,执行该exe文件,发现其与预期编译效果一致,说明编译成功。

      gcc –o name test.cpp

      可以生成名为name.exe的可执行程序。

      把指令改为gcc –e test.cpp >test.txt 后,提示错误

      gcc: no input files

      而把参数E改为大写之后问题即解决:

      gcc –E test.cpp > test.txt

版本说明

      GCC 8.3 发布了,GCC 8.3 是 GCC 8 分支的 bug 修复版本,其中包含对 GCC 8.2 中的回归和严重 bug 的重要修复,自上一版本以来修复了超过 153 个错误。

      GCC(GNU Compiler Collection,GNU编译器套装),是一套由 GNU 开发的编程语言编译器。它是一套以 GPL 及 LGPL 许可证所发行的自由软件,也是 GNU计划 的关键部分,亦是自由的 类Unix 及苹果计算机 Mac OS X 操作系统的标准编译器。GCC(特别是其中的C语言编译器)也常被认为是跨平台编译器的事实标准。GCC 原本只能处理 C语言,随后增加了处理 C++的能力,再之后也变得可处理 Fortran、Pascal、Objective-C、Java,以及 Ada 等多种语言。

      新版更新主要是针对 Windows 操作系统的一个 C++ Microsoft ABI 位阈布局(bitfield layout)Bug 的修复(PR87137)。具体如下:

      A non-field declaration could cause the current bitfield allocation unit to be completed, incorrectly placing a following bitfield into a new allocation unit. The Microsoft ABI is selected for:

      Mingw targets

      PowerPC, IA-32 or x86-64 targets when the -mms-bitfields option is specified, or __attribute__((ms_struct)) is used

      SuperH targets when the -mhitachi option is specified, or __attribute__((renesas)) is used

      GCC 8 介绍了这缺陷的额外案例。开发团队决定在单个改动中解决掉这个缺陷的所有案例,而不是只解决掉那些回归。

版本:官方版 v14.2.0 | 更新时间:2024-08-07

相关文章

同类推荐