Oracle® Developer Studio 12.5:C 用户指南

退出打印视图

更新时间: 2016 年 7 月
 
 

2.2 常量

本节包含与特定于 Oracle Developer Studio C 编译器的常量有关的信息。

2.2.1 整型常量

十进制、八进制和十六进制的整型常量可加后缀以指示类型,如下表所示。

表 2  数据类型后缀
后缀
类型
u 或 U
unsigned
l 或 L
long
ll 或 LL
long long(不能与 -std=c89 -pedantic 一起使用)
lu、LU、Lu、lU、ul、uL、Ul 或 UL
unsigned long
llu、LLU、LLu、llU、ull、ULL、uLL、Ull
unsigned long long(不能与 -std=c89 -pedantic 一起使用)

如果设置了 –std=c99 或 –std=c11,则编译器将根据常量大小,使用以下列表中可以表示该值的第一项:

  • int

  • long int

  • long long int

如果值超过 long long int 可表示的最大值,编译器会发出警告。

如果设置 -std=c89,则为无后缀常量指定类型时,编译器将根据常量大小,使用以下列表中可以表示该值的第一项:

  • int

  • long int

  • unsigned long int

  • long long int

  • unsigned long long int

2.2.2 字符常量

一个多字符常量,它不是具有从每个字符的数值派生的值的转义序列。例如,常量 ’123’ 的值为:

0
’3’
’2’
’1’

或 0x333231。

使用 -Xs 选项时,值为:

0
’1’
’2’
’3’

或者 0x313233。