-qro

适用的调用

表 1. 接受给定选项的调用
选项 xlc (编译 C) xlC (编译 C++) xlclang(编译 C) xlclang++(编译 C++)
-qro
注: 此表中仅列出典型调用。 对于所有基本调用及其等效特殊调用,您可以参阅 编译器调用的完整列表

类别

对象代码控制

等效编译指示

表 2。 两个类别的调用的编译指示等效项
xlc/xlC 和其他遗留的调用命令 xlclang/xlclang + + 调用命令
#pragma 选项 ro , #pragma 字符串

用途

指定字符串字面值的存储类型。

-qro基于 XL 的前端开始#pragma字符串(只读)基于 XL 的前端端 生效时,字符串将保存在只读内存中。 当 -qnoro基于 XL 的前端开始#pragma字符串(可写)基于 XL 的前端端 生效时,字符串将保存在可读可写内存中。

语法

操作语法

读取语法图跳过可视语法图  -q ronoro

编译指示语法

读取语法图跳过可视语法图 # pragma strings ( readonlywriteable )

缺省值

仅限 C 对于除 cc 以外的所有调用命令,字符串都是只读的。 如果使用 cc 调用命令,那么字符串是可写的。

仅限 C + + 字符串为只读字符串。

参数

基于 XL 的前端开始
readonly (仅限编译指示)
字符串字面值将放置在只读内存中。
可写 (仅限编译指示)
字符串字面值将放置在读写内存中。
基于 XL 的前端端

使用量

将字符串字面值放在只读内存中可以提高运行时性能并保存存储器。 但是,尝试修改只读字符串文字的代码可能会生成内存错误。

基于 XL 的前端开始实用程序必须出现在文件中的任何源语句之前。基于 XL 的前端端

预定义的宏

无。

示例

要编译 myprogram.c 以使存储类型可写,请输入:
xlc myprogram.c -qnoro

相关信息