这一章节介绍的全是VC编译器选项,option参数是cl.exe的编译选项,是cl.exe命令行参数中最复杂、也是最常用的。下面介绍一些常用的编译选项:

1、代码生成有关

这些选项将影响编译完成后生成的机器代码:

2、调试有关

与调试有关的编译选项如下图,/Z7、/Zi、/ZI这三个选项是对程序进行调试时所必需的选项,同时注意,在生成调试版本的程序时,需要指定/Od选项以禁用优化:

3、程序优化有关

与程序优化有关的选项如下图,优化选项将影响编译器对代码的优化,最选择代码体积最小还是选择运行速度最快等需要使用这些选项:

4、输出文件有关

与生成的输出文件有关的选项如下图,输入文件在参数中需要使用字符串来指定其路径,字符串使用双引号("")括起来,如/Fd "BIN//"。注意字符串的转意字符,如果需要使用单斜杠表示文件路径,需要使用双杠("//"):

5、预处理器有关

与预处理器有关的选项如下图,这些选项将影响预处理器的运行,比如通过/D选项可以达到与在源代码中使用#define定义基本相同的效果:

6、链接有关

与链接有关的选项如下图,编译器可以调试链接器,向链接器传递调用参数。/link选项完成这项功能,还可以指定堆栈的大小,创建动态链接库等:

7、预编译有关

与预编译有关的选项如下图,这些编译选项会影响预编译结果:

8、语言有关

与语言有关的选项如下图,比如/Za、/Ze选项表示是否支持微软的语言扩展,还是只支持标准 C/C++。/Zp选项可以指定结构中的成员对齐方式,这将影响到生成的程序中结构体的大小。在一些协议头的处理中,/Zp选项非常有用:

9、其他选项

这些选项的影响是多方面的,不太好分类。包括显示帮助信息、设置警告等。

关于VC编译器参数与选项方面的知识就是这此了,当然这里只是大多数VC/C++编译器常用的选项,并不是全部编译选项。

(如果需要使用到编译器其他的选项,请自行查阅MSDN)

另外,不足的地方希望大家能够补充说明!

转载于:https://www.cnblogs.com/songtzu/archive/2013/01/12/2857364.html

深入探究VC —— 编译器cl.exe(2)【转】http://blog.csdn.net/wangningyu/article/details/4837419...相关推荐

  1. 深入探究VC —— 链接器link.exe(4)【转】http://blog.csdn.net/wangningyu/article/details/4849452...

    在程序编译完成后,生成的文件是以.obj为扩展名的对象文件,link.exe是将这些对象文件与库链接起来以创建可执行文件或动态链接库文件的工具. link.exe的输入文件包括obj文件.lib文件. ...

  2. 深入探究VC —— 编译器cl.exe(1)

    cl.exe的功能是将源代码文件编译为可提供链接器使用的obj对象文件.cl.exe命令行参数形式如下: CL (option...) file... [option | file]... [lib. ...

  3. VC实用小知识总结 (一),转http://blog.csdn.net/myiszjf/article/details/10007431

    在上一篇中,我们以经介绍了程序的流程和框架,在本篇将详细讨论各个功能的实现主要包括 1.获取磁盘信息 2.获取目录信息 3.获取文件信息 4.运行指定文件 5.删除指定文件 6.删除指定目录 7.创建 ...

  4. 在VC中如何使用OCX控件 【来源:http://blog.csdn.net/wulang1114/article/details/4806089】

    首先感谢网络中的各位高手,我的文章只是对你们文章的Copy和学习. 工作中客户提供了一个ocx控件,学习了如何使用它.发现网上没用针对像我一样菜鸟的文章,所以我总结一下我的学习成果供菜鸟学习使用. 1 ...

  5. c语言cl.exe什么意思,C语言编译器CL.exe

    下载地址CL.7z 版权问题: 仅供学习交流,请于24小时内删除,本人不承担版权问题- 基本使用: 1.解压缩,例如解压缩到E盘根目录下 2.打开cmd命令行界面(快捷方式win+R输入cmd回车) ...

  6. 未解决:错误的结果 2 (从“D:\Program Files\Microsoft Visual Studio 8\VC\bin\cl.exe”返回)。...

    今天在编译一个VC2005的应用程序时提示该错误.在网上搜了一下这个文件,原来是一个C/C++优化编译器小工具. 我在生成正好在项目属性里面设置了优化速度功能,发现了问题所在. 于是我打开cmd,直接 ...

  7. nmake错误:VC\bin\cl.EXE: 返回代码“0xc0000135“

    产生原因:在安装visual studio的时候没有勾选注册环境变量导致的. 解决办法:在系统环境变量中加入visual studio的安装路径:vs安装路径\VC\Bin,以及vs安装路径\Comm ...

  8. VC中Error spawning cl.exe错误的解决方法.

    VC中Error spawning cl.exe错误的解决方法. 转载地址:http://blog.csdn.net/badboyfind/article/details/1816189 可能很多人在 ...

  9. 设置cl.exe环境变量

    ninja ninja 先给出两个报错的内容: d:\Anaconda3\envs\torch\lib\site-packages\torch\utils\cpp_extension.py:189: ...

最新文章

  1. Windows Phone开发者注册秘籍
  2. 学习OGRE - 读取天龙八部scene文件
  3. html dom 高级,DOM 高级工程师不完全指南
  4. PHP 入门 - 2.函数
  5. 弹出键盘布局上移_评测 | 别买了HHKB键盘不知道这些新功能!
  6. 我一定要找到它FreeEIM
  7. Adobe Experience Design是什么软件?xd mac版下载安装教程 XD 2021发布
  8. CentOS 7添加开机启动服务/脚本
  9. LeetCode--139. 单词拆分(动态规划)
  10. 联想开机启动项按哪个_win7系统如何修改系统启动项 win7系统修改系统启动项方法【步骤】...
  11. linux 定时器_通过linux源码分析nodejs的keep-alive
  12. matlab设计激光腔,激光原理课程设计
  13. 微软发布“史无前例”的恶意软件数据集,设17万奖金征集预测算法
  14. IMX8mp alsa音频调试
  15. C++实现基于mfc的仓库管理系统(可连MySQL数据库)
  16. 「经济读物」经济学通识
  17. 【C语言自学】第三章流程控制
  18. IEEE投稿完整流程——以IEEE Transactions on Cybernetics为例
  19. java map put map_关于Java中有关Map中put方法理解
  20. bzoj2818Gcd

热门文章

  1. 电子计算机电缆用引流线,本质安全防爆电路用仪表计算机电缆
  2. 下三角矩阵的逆矩阵_上三角或下三角矩阵的逆矩阵能否简便方法求出??只有主副对角线不为0的矩阵能否直接写出逆矩阵。...
  3. kubernetes不同的命名空间下的容器能通信吗_在Kubernetes环境中,容器间如何进行网络通信?...
  4. SAP License:Ecc6.0和R/3 有什么区别?
  5. Hive数仓之拉链表(原理、设计以及在Hive中的实现)
  6. Mybatis返回类型和接收参数为Map类型
  7. Jquery跨域请求php数据(jsonp)
  8. Boost.Test 测试范型库
  9. 【学习】DataFrameSeries类【pandas】
  10. C#实用杂记-EF全性能优化技巧