1

来自标准草案 N1256,第 6.4.4.1 节,第 5 条:

整数常量的类型是可以表示其值的对应列表中的第一个。

从表中,似乎没有后缀的八进制和十六进制常量将被分配任何标准整数类型(signed/unsignedint/ long int/的最小合适组合long long int)。对于十进制常量,signed默认情况下只考虑类型。

u为什么/U存在对我来说很有意义;有符号溢出行为充其量与无符号溢出行为不同,最坏的是UB,所以我想可能有必要在复杂的表达式中指定文字的无符号性。

这给我们留下了L/lLL/ll后缀。它们只能用于选择整数文字类型的下限。这在 C99 中有什么实际用途?

4

0 回答 0