目录

一元转换(Unary conversions)

一元转换主要发生在一元运算之前(包括!、-、+、~、*),也包括<<和>>这两个特殊的二元运算。

整型(Integer)

一元转换最需要注意的地方是整型(integer)转换,也称为整型提升(integer promotion),规则如下:

简要的说,标准C采用值保留(value preserving)原则,Traditional C采用无符号保留(unsigned preserving)原则。两者在无符号整数提升规则上的这点区别,要特别小心。

浮点型(Float-point)

标准C对浮点型不做转换,但Traditional C将float提升为double

数组(Array)

数组类型转换为一个指向该数组首元素的指针。

函数(Function)

函数类型转换为一个指向该函数的指针。