Oracle Solaris Studio 12.2:C 用户指南

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

在以下代码中,假定 unsigned short 和 unsigned char 均比 int 短。


int f(void)
{
    unsigned short us;
    unsigned char uc;
    return uc < us;
}

在此示例中,两个自动变量会同时提升为 int 或 unsigned int,因此比较有时无符号,有时带符号。然而,由于两种选择的结果相同,因此 C 编译器并不向您发出警告。