JavaScript is required to for searching.
跳过导航链接
退出打印视图
Oracle Solaris Studio 12.2:C 用户指南
search filter icon
search icon

文档信息

前言

1.  C 编译器介绍

2.  特定于 C 编译器实现的信息

3.  并行化 C 代码

4.  lint 源代码检验器

5.  基于类型的别名分析

6.  转换为 ISO C

6.1 基本模式

6.1.1 -Xc

6.1.2 -Xa

6.1.3 -Xt

6.1.4 -Xs

6.2 旧式和新式函数的混合

6.2.1 编写新代码

6.2.2 更新现有代码

6.2.3 混合注意事项

6.3 带有可变参数的函数

6.4 提升:无符号保留与值保留

6.4.1 背景

6.4.2 编译行为

6.4.3 第一个示例:强制类型转换的使用

6.4.4 位字段

6.4.5 第二个示例:相同的结果

6.4.6 整型常量

6.4.7 第三个示例:整型常量

6.5 标记化和预处理

6.5.1 ISO C 转换阶段

6.5.2 旧 C 转换阶段

6.5.3 逻辑源代码行

6.5.4 宏替换

6.5.5 使用字符串

6.5.6 标记粘贴

6.6 constvolatile

6.6.1 类型(仅适用于 lvalue

6.6.2 派生类型中的类型限定符

6.6.3 const 意味着 readonly

6.6.4 const 用法示例

6.6.5 volatile 意味着精确语义

6.6.6 volatile 用法示例

6.7 多字节字符和宽字符

6.7.1 亚洲语言需要多字节字符

6.7.2 编码变种

6.7.3 宽字符

6.7.4 转换函数

6.7.5 C 语言特征

6.8 标准头文件和保留名称

6.8.1 标准头文件

6.8.2 保留供实现使用的名称

6.8.3 保留供扩展使用的名称

6.8.4 可安全使用的名称

6.9 国际化

6.9.1 语言环境

6.9.2 setlocale() 函数

6.9.3 更改的函数

6.9.4 新函数

6.10 表达式中的分组和求值

6.10.1 定义

6.10.2 K&R C 重新整理许可证

6.10.3 ISO C 规则

6.10.4 圆括号

6.10.5 As If 规则

6.11 不完全类型

6.11.1 类型

6.11.2 完成不完全类型

6.11.3 声明

6.11.4 表达式

6.11.5 正当理由

6.11.6 示例

6.12 兼容类型和复合类型

6.12.1 多个声明

6.12.2 分别编译兼容性

6.12.3 单编译兼容性

6.12.4 兼容指针类型

6.12.5 兼容数组类型

6.12.6 兼容函数类型

6.12.7 特殊情况

6.12.8 复合类型

7.  转换应用程序以适用于 64 位环境

8.  cscope:交互检查 C 程序

A.  按功能分组的编译器选项

B.  C 编译器选项参考

C.  实现定义的 ISO/IEC C99 行为

D.  支持的 C99 功能

E.  实现定义的 ISO/IEC C90 行为

F.  ISO C 数据表示法

G.  性能调节

H.  K&R Solaris Studio C 与 Solaris Studio ISO C 之间的差异

索引

6.1 基本模式

ISO C 编译器允许同时使用旧式和新式 C 代码。如果您使用下列 -X(注意大小写)选项并且 -xc99=none,则编译器提供不同的 ISO C 标准一致性级别。-Xa 是缺省模式。请注意,编译器的缺省模式为 -xc99=all,因此在设置每个 -X 选项的情况下编译器的行为取决于 -xc99 的设置。

6.1.1 -Xc

c = 一致性)在没有 K&R C 兼容性扩展的情况下,在最大程度上与 ISO C 一致。编译器对使用 ISO C 构造的程序发出错误和警告。

6.1.2 -Xa

ISO C 以及 K&R C 兼容性扩展,具有 ISO C 要求的语义更改。如果 K&R C 和 ISO C 为相同构造指定不同语义,则编译器发出关于冲突的警告并使用 ISO C 解释。这是缺省模式。

6.1.3 -Xt

t = 转换)ISO C 以及 K&R C 兼容性扩展,没有 ISO C 要求的语义更改。如果 K&R C 和 ISO C 为相同构造指定不同语义,则编译器发出关于冲突的警告并使用 K&R C 解释。

6.1.4 -Xs

(s = K&R C) 编译的语言包括与 ISO K&R C 兼容的所有功能。编译器对在 ISO C 和 K&R C 之间具有不同行为的所有语言构造发出警告。