此面板包含各种语言、语言环境和文件系统选项。
有关 *CMDDFT 设置和按钮帮助的信息,请参见一般对话帮助。
- 语言级别
- 指定在编译源时,将包括哪一组库函数原型。如果没有指定语言级别并且没有将源成员中的
#pragma langlvl 伪指令编码,则语言级别将缺省为
*EXTENDED。在指定语言级别后,它将替换源成员中指定的 #pragma
langlvl 伪指令。
可选择下列某一个值填入该字段中:
- *CMDDFT
- 参考系统当前缺省的语言级别。
- *EXTENDED
- 定义预处理器宏 __EXTENDED__,而没有定义其它语言级别变量。ANSI 标准 C 和
IBM 语言扩展都可用。当所有 C 函数都可用时,才使用这个参数。
- *ANSI
- 定义预处理器宏 __ANSI__ 和 __STDC__,而没有定义其它语言级别变量。仅 ANSI
标准 CC++ 可用。
- 语言环境支持
- 指定将由所创建的对象使用的语言环境支持的类型。可选择下列某一个值填入该字段中:
- *CMDDFT
- 参考系统当前缺省的语言环境支持。
- *CLD
- 用此选项编译的对象使用与 ILE C/C++
编译器和运行时的早期发行版一起提供的语言环境支持,使用的语言环境对象的类型为
*CLD。
- *LOCALE
- 用此选项编译的对象使用与 ILE C/C++
编译器和运行时一起提供的语言环境支持,使用的语言环境对象的类型为
*LOCALE。该选择仅对在 V3R7 及以后各发行版的 OS/400
操作系统上运行的程序有效。
- *LOCALEUCS2
- 用此选项编译的对象以 Unicode CCSID(13488)两字节格式存储宽位字符文字。
- 集成文件系统选项
- 使用这个字段来选择哪些“集成文件系统”选项将用于创建对象中的 C 流 I/O
操作。 从C 流 I/O 操作字段选择下列值中的一个:
- *CMDDFT
- 参考系统当前缺省的集成文件系统选项。
- *NOIFSIO
- 正创建的对象将使用 AS/400 数据管理文件系统进行 C 流 I/O 操作。
- *IFSIO
- 正创建的对象将使用集成文件系统 API 对大小达二千兆字节的文件进行 C 流 I/O
操作。
- *IFS64IO
- 正在创建的对象将使用支持对大小大于 2 吉字节的文件进行 C 流 I/O 操作的 64
位“集成文件系统”API。使用此选项也可以隐式方式启用 *IFSIO 选项。
- *ASYNCSIGNAL
- 启用同步发信号函数到异步发信号函数的运行时映射。如果指定这个选项,C
运行时会将同步 signal() 和 raise() 函数分别映射到异步
sigaction() 和 kill() 函数。
- *NOASYNCSIGNAL
- 不启用同步发信号函数到异步发信号函数的运行时映射。
- 数据模型
- 指定在没有显式修饰符时如何说明指针类型。可选择下列某一个值填入该字段中:
- *CMDDFT
-
- *P128
- 整数、长型和指针数据类型的大小分别是 4、4 和 16 个字节。
- *LLP64
- 整数、长型和指针数据类型的大小分别是 4、4 和 8 个字节,且编译器将定义宏
__LLP64_IFC__。
注:
- 要使用 *LLP64 设置,必须启用兆兆存储器地址(“生成”选项面板)。
- 如果编译器将早于 V5R1M0 的发行版作为目标,则忽略 *LLP64 设置。
- __ptr64 和 __ptr128
类型修饰符和数据模型编译指示覆盖这个编译器选项的设置。
- 压缩结构
- 指定对齐规则,以用于源代码中的结构成员、联合和类。可选择下列某一个值填入该字段中:
- *CMDDFT
-
- 1
- 按照 1 字节边界压缩结构和联合。
- 2
- 按照 2 字节边界压缩结构和联合。
- 4
- 按照 4 字节边界压缩结构和联合。
- 8
- 按照 8 字节边界压缩结构和联合。
- 16
- 按照 16 字节边界压缩结构和联合。
- *NATURAL
- 对结构成员使用自然对齐。
- 编译器服务选项
- 指定一个或多个编译器服务选项。有效的选项字符串将在 PTF
封面信函和发行说明中描述。 可选择下列某一个值填入该字段中:
- *CMDDFT
- 使用系统当前缺省的计算机服务选项。
- *NONE
- 没有选中编译器服务选项。
- 特许内部代码选项
- 指定一个或多个“特许内部代码”编译时选项。这个参数允许选择个别编译时选项,供那些理解每种所选编译器选项的潜在优缺点的高级程序员使用。可选择下列某一个值填入该字段中:
- *CMDDFT
- 使用系统当前缺省的特许内部代码选项。
- *NONE
- 没有选中编译时选项。
- 目标 CCSID
- 指定生成模块的目标编码字符集标识符(CCSID)。模块 CCSID
标识存储模块字符数据的编码字符集标识符。它包括用于描述在源代码中描述的文字、注释和标识符名称的字符数据,除了
CCSID 5026、930 和 290 的标识符名称。可选择下列某一个值填入该字段中:
- *CMDDFT
- 使用系统当前缺省的 CCSID 设置。
- *SOURCE
- 使用根源文件的 CCSID。
- *JOB
- 使用当前作业的 CCSID。
- *HEX
- 使用 CCSID 65535,表示字符数据被当作位数据并且不转换它。
也可以直接在这个字段中输入 CCSID 值。
注:
- 字符转换只应用于 char 字符串,而不用于 wchar_t
字符串。
- 使用 #pragma convert
将覆盖应用编译指示的代码部分中的字符转换。
- 当为早于 V5R1M0 的目标发行版编译时,忽略这个选项。
- 包括目录
- 指定搜索包括文件的各个目录。除了指定的目录,还要在源目录中搜索用户包括文件。可选择下列某一个值填入该字段中:
- *CMDDFT
- 参考系统当前缺省的包括文件目录搜索设置。
- *NONE
- 除源目录外不在其它目录中搜索包括文件。
要在搜索列表添加新目录,请将目录名称输入文本输入字段,然后单击添加。要删除目录,请从列表中选择目录,然后单击删除。
- 定义预处理器宏
- 定义将在编译器处理文件之前生效的预处理器宏。可选择下列某一个值填入该字段中:
- *CMDDFT
- 参考系统当前缺省的定义选项。
- *NONE
- 没有定义任何宏。
要定义宏,请将宏定义输入宏定义区,然后单击添加。要删除宏,请选择列表中的宏,然后单击删除。
注:
- 最多可以定义 32 个宏。
- 宏的最大长度为 80 个字符。
- 必须使用单引号将区分大小写的宏括起。
- 由该选项定义的宏将替换源中名称相同的宏定义。如果发生这种情况,则编译器会发出警告消息。
- 该选项无法定义类似函数的宏,如 #define max(a,b)
((a)>;(b):(a)?(b))。
- 相关性信息
- 指定是否存储生成的相关性信息,以及存储在哪里。可选择下列某一个值填入该字段中:
- *CMDDFT
- 参考系统当前缺省的相关性信息设置。
- *NODEP
- 没有生成相关性信息。
- 文件名
- 生成的相关性信息将存储到选定的文件中。
(C) Copyright IBM Corporation 1992, 2005. All Rights Reserved.