VS2005编译器选项

xiaoxiao2026-05-21  14

[size=medium]下面是一个完整的编译器选项分类列表。有关按字母顺序排序的列表,请参见按字母顺序列出的编译器选项。 优化 /O1 创建小代码 /O2 创建快速代码 /Ob 控制内联展开 /Od 禁用优化 /Og 使用全局优化 /Oi 生成内部函数 /Os 代码大小优先 /Ot 代码速度优先 /Ox 使用最大优化 (/Ob2gity /Gs) /Oy 省略帧指针(仅限 x86) 代码生成 /arch 使用 SSE 或 SSE2 指令生成代码(仅限 x86) /bigobj 增加 .obj 文件中的可寻址节数。 /clr 生成要在公共语言运行库上运行的输出文件 /EH 指定异常处理模型 /favor 生成为特定 x64 结构或为 AMD64 和 64 位内存扩展技术 (EM64T) 结构中的特定宏结构进行了优化的代码。 /fp 指定浮点行为。 /G1 针对 Itanium 处理器进行优化。仅可用于 IPF 跨平台编译器或 IPF 本机编译器。 /G2 针对 Itanium2 处理器进行优化。仅可用于 IPF 跨平台编译器或 IPF 本机编译器。 /Gd 使用 __cdecl 调用约定(仅限 x86) /Ge 激活堆栈探测 /GF 启用字符串池 /Gh 调用挂钩函数 _penter /GH 调用挂钩函数 _pexit /GL 启用全程序优化 /Gm 启用最小重新生成 /GR 启用运行时类型信息 (RTTI) /Gr 使用 __fastcall 调用约定(仅限 x86) /Gs 控制堆栈探测 /GT 支持使用静态线程本地存储区分配的数据的纤程安全 /GX 启用同步异常处理 /Gy 启用函数级链接 /Gz 使用 __stdcall 调用约定(仅限 x86) /MD 使用 MSVCRT.lib 创建多线程 DLL /MDd 使用 MSVCRTD.lib 创建调试多线程 DLL /MT 使用 LIBCMT.lib 创建多线程可执行文件 /MTd 使用 LIBCMTD.lib 创建调试多线程可执行文件 输出文件 /FA 创建列表文件,?设置列表文件名 /Fa 创建列表文件?,设置列表文件名 /Fd 重命名程序数据库文件 /Fe 重命名可执行文件 /Fm 创建映射文件 /Fo 创建对象文件 /Fp 指定预编译头文件名 /FR /Fr 生成浏览器文件 /Fx 将插入的代码与源文件合并 调试 /GS 缓冲区安全检查 /GZ 与 /RTC1 相同 /homeparams 强制在进入函数时将传入寄存器中的参数写入其在堆栈中的位置。此编译器选项只可用于 x64 编译器(本机编译和跨平台编译)。 /RTC 启用运行时错误检查 /Wp64 检测 64 位可移植性问题 /Yd 将完整的调试信息放在所有对象文件中 /Yl 创建调试库时插入 PCH 引用 /Z7 生成与 C 7.0 兼容的调试信息 /Zi 生成完整的调试信息 /ZI 将调试信息包含在与“编辑并继续”兼容的程序数据库中(仅限 x86) /Zx 生成可调试的优化代码。仅可用于 IPF 跨平台编译器或 IPF 本机编译器。 预处理器 /AI 指定在解析传递到 #using 指令的文件引用时搜索的目录 /C 在预处理期间保留注释 /D 定义常数和宏 /E 将预处理器输出复制到标准输出 /EP 将预处理器输出复制到标准输出 /Fl 预处理指定的包含文件 /FU 强制使用文件名,就像它已被传递到 #using 指令一样 /I 在目录中搜索包含文件 /P 将预处理器输出写入文件 /U 移除预定义宏 /u 移除所有的预定义宏 /X 忽略标准包含目录 语言 /openmp 在源代码中启用 #pragma omp。 /vd 取消或启用隐藏的 vtordisp 类成员 /vmb 对指向成员的指针使用最佳的基 /vmg 对指向成员的指针使用完全一般性 /vmm 声明多重继承 /vms 声明单一继承 /vmv 声明虚拟继承 /Za 禁用语言扩展 /Zc 在 /Ze 下指定标准行为 /Ze 启用语言扩展 /Zg 生成函数原型 /Zl 从 .obj 文件中移除默认库名 /Zp n 封装结构成员 /Zs 只检查语法 链接 /F 设置堆栈大小 /LD 创建动态链接库 /LDd 创建调试动态链接库 /LN 创建 MSIL 模块。 /link 将指定的选项传递给 LINK /MD 使用 MSVCRT.lib 编译以创建多线程 DLL /MDd 使用 MSVCRTD.lib 编译以创建调试多线程 DLL /MT 使用 LIBCMT.lib 编译以创建多线程可执行文件 /MTd 使用 LIBCMTD.lib 编译以创建调试多线程可执行文件 预编译头 /Y- 忽略当前生成中的所有其他预编译头编译器选项 /Yc 创建预编译头文件 /Yd 将完整的调试信息放在所有对象文件中 /Yu 在生成期间使用预编译头文件 杂项 @ 指定响应文件 /? 列出编译器选项 /analyze 启用代码分析。 /c 编译但不链接 /doc 处理 XML 文件的文档注释。 /errorReport 允许您将内部编译器错误 (ICE) 信息直接提供给 Visual C++ 团队。 /FC 在诊断文本中显示传递给 cl.exe 的源代码文件的完整路径。 /H 限制外部(公共)名称的长度 /HELP 列出编译器选项 /hotpatch 创建可热修补的映像。 /J 更改默认的 char 类型 /nologo 取消显示登录版权标志 QIfist 当需要从浮点类型转换为整型时取消 Helper 函数 _ftol 的调用(仅限 x86) /QIPF_B 根据 B CPU 单步执行的勘误表,不生成给出异常结果的指令序列。(仅限 IPF) /QIPF_C 根据 C CPU 单步执行的勘误表,不生成给出异常结果的指令序列。(仅限 IPF) /QIPF_fr32 不使用高 96 位浮点寄存器。(仅限 IPF) /QIPF_noPIC 生成具有位置相关代码的映像(仅限 IPF)。 /QIPF_restrict_plabels 增强不在运行时创建函数的程序的性能。(仅限 IPF) /showIncludes 在编译期间显示所有包含文件的列表 /Tc /TC 指定 C 源文件 /Tp /TP 指定 C++ 源文件 /V 设置版本字符串 /W 设置警告等级 /w 禁用所有警告 /Wall 启用所有警告,包括默认情况下禁用的警告 /WL 在从命令行编译 C++ 源代码时启用错误信息和警告消息的单行诊断 /Zm 指定预编译头内存分配限制 [/size]
转载请注明原文地址: https://www.6miu.com/read-5049151.html

最新回复(0)