zoukankan      html  css  js  c++  java
  • 深入探究VC —— 编译器cl.exe(2)

    这一章节介绍的全是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)

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

     


    本文来自CSDN博客,转载请标明出处:http://www.cnblogs.com/lidabo/admin/file:///C:/Documents%20and%20Settings/Administrator/桌面/MFC-20100806文章/MFC-20100806文章/深入探究VC%20——%20编译器cl_exe(2)%20-%20zxzqwq2009的专栏%20-%20CSDN博客.htm

  • 相关阅读:
    Gamma阶段第三次scrum meeting
    【技术博客】Django+uginx+uwsgi框架的服务器部署
    Gamma阶段第二次scrum meeting
    Gamma阶段第一次scrum meeting
    团队项目贡献分
    Beta阶段发布说明
    Beta阶段测试报告
    【Beta阶段】第十次Scrum Meeting
    团队贡献分汇总
    [Gamma]Scrum Meeting#4
  • 原文地址:https://www.cnblogs.com/lidabo/p/3447069.html
Copyright © 2011-2022 走看看