项目需要,对同一个源码进行编译,得到不同的优化版本的可执行文件。刚刚开始使用CodeBlocks的GUI的项目 Project->Properties->Project's build options 如下:

但是分别勾选 -O ,-O2之后发现并没有优化的差别 (具体表现在指令数没有变化),决定自己用命令行。

找到 CodeBlock 目录下的MinGW 目录 ,进入bin目录,你会发现有很多可执行文件,我们这里使用 mingw32-c++编译器(因为其他并不了解)。

打开CMD,进入到代码所在目录,输入以下命令:(不同优化命令请自行百度 -O0 -O1 -O2 -O3 -O4 -Os)

得到可执行文件,使用IDA对其反编译,统计指令数,发现差异很明显。

在Windows 下使用CodeBlocks 自带编译器实现对编译的优化相关推荐

  1. windows下的C++与cuda编译器位置

    在windows下最常见的C++编译器为visual studio自带的编译器cl.exe 通常其所在目录为: C:\Program Files (x86)\Microsoft Visual Stud ...

  2. linux下如何安装自带编译器的codeblocks,在Ubuntu 16.04系统中使用PPA源安装Code Blocks的方法...

    本文介绍在Ubuntu 16.04操作系统中使用PPA源安装Code Blocks的方法,可以先参考在Ubuntu系统中安装Code::Blocks的方法一文. 使用PPA源安装Code Blocks ...

  3. linux下如何安装自带编译器的codeblocks,codeblocks安装(自带gcc编译器)

    在Ubuntu13.04中配置Jexus+Mono3.2运行Asp.Net Mvc 4站点 (二) 开始写这篇前看了看日期,写下这个序列的前一半竟是两个月前的事情了,无比惭愧.这段时间尝试重新组织Mv ...

  4. Python学习笔记——搭建Windows下的基本环境Geany编译器

    Python3的安装 打开官方网站www.python.org,点击Downloads,根据需求或者爱好选择版本(我选择了最新的版本3.7.4) 下载可执行安装程序即可,电脑版本是64位的下载Wind ...

  5. Visual Studio在Release模式下开启debug调试,编译器提示变量已被优化掉,因而不可用

    系列文章目录 文章目录 系列文章目录 前言 一.解决办法 1.修改工程属性 参考 前言 我们在编写代码的时候,如果用到别人的库,而别人只提供了release版本,所有我们也只能生成release版本的 ...

  6. linux下安装codeblocks及写完程序之后编译成功但无法运行的原因

    一:在软件中心输入codeblocks,然后点击安装,等着装完就行了. 再按ctrl+alt+t 打开终端 输入 sudo apt-get install gcc 而后再输入sudo apt-get ...

  7. Windows 下 JetBrains 系列如 IDEA、PhpStorm、PyCharm 中文优化字体方案

    因为博主主力工具是 MacBook Pro,所以在 macOS 下 IDEA 使用 Monaco 字体时,字体显得非常美观(毕竟 Retina 2K,在小小的 15 吋笔电上).回家后面对 1080P ...

  8. Windows 下用VS2012(Visual Studio 2012)编译librtmp

    https://blog.csdn.net/caoshangpa/article/details/52872756 https://blog.csdn.net/ILOVEYOULEEHUIJIE/ar ...

  9. Windows下使用Visual Studio自带的MSVC,命令行编译C/C++程序

    我的个人博客:zhang0peter的个人博客 1.工具介绍 Windows下VS套件自带的编译程序有以下这些: cl.exe:编译程序 link.exe:链接程序 lib.exe:加载lib库的程序 ...

最新文章

  1. 腾讯帝国的野蛮生长史
  2. HDOJ 1098 Ignatius's puzzle
  3. 算法与数据结构(2)
  4. 数据结构之图的存储结构:邻接多重表
  5. hdu 1134 卡特兰数(大数模板)
  6. 半导体八大工艺流程图_大国重器,国芯基石 半导体离子注入机行业研究报告...
  7. [引]构造文法时表达式中算符优先级的问题
  8. android手势密码csdn,Android简易手势密码开源库
  9. mapboxgl 互联网地图纠偏插件(三)
  10. 项目管理-产品开发流程
  11. 免费企业邮箱注册申请免费吗?哪个好用
  12. 硕士论文结构分析与如何写作
  13. CR 与 LF 换行符
  14. Nginx多个域名配置ssl证书出错解决方案
  15. iOS开发实用技术之MapKit框架的使用
  16. 五、数组、字符串以及冒泡排序--附代码案例
  17. 如何分辨市面上的真假HDMI光纤线?
  18. 小程序授权头像昵称改为头像昵称填写能力详解
  19. Mastering Qt 5 学习笔记-Mandelbrot
  20. 修改ssh命令行[root@xxx]#颜色

热门文章

  1. 面向对象编程的五大基本原则
  2. 体验C++20新特性的最简便方法
  3. mysql建表时建外键约束_数据库建表时一定要设置外键约束关系吗?
  4. python 访问网页aspx_asp.net – 如何向python中的.aspx页面提交查询
  5. 小程序 delete_程序员崩溃的43个瞬间!搞工科的是不是都这样?
  6. Adobe illustrator 直接选择工具删除白板 - 连载 6
  7. 不选择互联网行业,学弟学妹可以选择这些新兴科技行业发展!
  8. Linux基础学习五(1):java项目部署实战教程
  9. Python笔记-uiautomator2截图点击,OpenCV找图
  10. Java工作笔记-发送SOAP协议请求