当前位置: 首页 > news >正文

上海高端网站设计北京网站制作推广

上海高端网站设计,北京网站制作推广,网站数据库 数据库空间购买租用,百度视频推广前言 本篇文章介绍gcc编译器编译C文件的流程概述 比如我们创建了一个.c文件hello_gcc.c #include <stdio.h> int main() {printf("Hello gcc!!!\n");return 0; }最简单的方式就是在终端使用命令 gcc hello_gcc.c -o hello_gcc // 编译、汇编、链接 ./hello_…

前言

本篇文章介绍gcc编译器编译C文件的流程概述
比如我们创建了一个.c文件hello_gcc.c

#include <stdio.h>
int main()
{printf("Hello gcc!!!\n");return 0;
}

最简单的方式就是在终端使用命令

gcc hello_gcc.c -o hello_gcc	// 编译、汇编、链接
./hello_gcc			// 运行
Hello gcc			// 输出

也可以使用命令分布编译,这样可以查看每个流程的结果

分步编译

gcc -E

仅预处理,不编译、汇编或链接,可以生成.i文件

gcc -S

仅编译,不汇编和链接,生成.s汇编代码

gcc -c

仅编译,汇编,不链接,生成.o机器代码

gcc -o <file>

设置输出的文件名

编译器优化选项

-O0

默认选项,不进行优化处理。

-O或者-O1

优化生成代码,编译器会尝试减少代码大小和执行时间,而不执行任何需要大量编译时间的优化。

-O2

进一步优化。GCC 执行几乎所有支持的不涉及空间速度权衡的优化。
编译器不会执行循环展开或函数内联。

-O3

比 -O2 更进一步优化,包括 循环展开和inline 函数。

-Og

优化调试体验。 -Og 应该是标准编辑-编译-调试循环的优化级别选择,提供合理的优化级别,同时保持快速编译和良好的调试体验。 对于生成可调试代码来说,它是比 -O0 更好的选择,因为在 -O0 处禁用了一些收集调试信息的编译器传递。 与 -O0 一样,-Og 完全禁用许多优化过程,以便控制它们的各个选项不起作用。 否则 -Og 启用所有 -O1 优化标志,除了那些可能干扰调试的标志之外

警告选项

Waddress

检查是否存在可疑的内存地址使用

Wformat

检查标准库函数的使用格式是否正确,比如printf的格式化字符串中的格式符和对应的参数是否匹配

Wunused-function

对已声明但是未定义的静态函数和未被使用的非内联静态函数发出警告

Wswitch

当用switch用于枚举类型时,判断分支是否包含所有枚举值,否则发出警告

Wunused-variable

对声明但未被使用的变量发出警告

Wunused-but-set-variable

对声明且被赋值但未被使用的变量发出警告

Warray-bounds=1

数组越界检查,需启用选项-ftree-vrp

其他常用选项

gcc -B <directory>

添加<directory>文件夹到gcc编译搜索的路径

gcc --help

显示gcc帮助信息

gcc --version

显示编译器的版本信息

gcc (Ubuntu 4.8.4-2ubuntu1~14.04.4) 4.8.4
Copyright (C) 2013 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.

gcc -dumpversion

显示编译器的版本

4.8

gcc -dumpmachine

显示编译器的目标处理器

x86_64-linux-gnu
http://www.yayakq.cn/news/65113/

相关文章:

  • 小城市网站建设网站服务器安全部署
  • 企业网站 域名注册wordpress 调用菜单
  • 网站空间与域名的关系360优化关键词
  • 响应式品牌网站wordpress重新打开多站点
  • 专业建站公司设计方案就业网站建设总结
  • phton可以做网站吗山东外贸公司排名
  • 网站开发 实名认证需要备案吗淘宝网站建设的目标是什么意思
  • 网站搜索框在线生成logo图标免费
  • 护肤品网站建设前的行业分析宁波海曙网站开发
  • cp网站建设建立简单的网站
  • 网站后台新闻不显示如何刷新网页设计制作模板及代码
  • 为什么百度搜不到我的网站公司名字大全参考2023
  • 苏州自助建站平台seo网站外链工具
  • 桥头网站建设公司开化网站建设公司
  • 网站备案的幕布尺寸wordpress小说文章发布插件
  • 莆田企业自助建站深圳高端画册设计
  • 网站怎么上传ftp网络项目设计方案
  • php用什么做网站服务器吗做网站的技术盏
  • 昆山建设监察大队网站为企业做网站要向谁索要资料
  • 专业手机移动网站设计吉首网站制作
  • 成品电影网站建设自己做一个网站难不难
  • 网站建设与管理计划书ppt模板免费下载 素材手机版
  • 网站开发一般用哪种语言网站中二级导航栏怎么做
  • 镇江网站推广优化个人博客网站搭建
  • 微信导航网站怎么做的百度怎么推广自己的信息
  • 德阳市做网站企业建站需要多少钱
  • 快速学制作网站为网站开发
  • 卖家如何做阿里巴巴国际网站西安网站群建设
  • 洛阳有做网站开发的吗久久建筑网是山东省的吗
  • 天津建设招聘信息网站网站名称设置