我想知道以下代码输出的原因是什么:
unsigned short a=10,aa=-1;
if(a>-1)
printf("surprise");
else
printf(" No surprise");
这给出了输出“惊喜”
unsigned int a=10,aa=-1;
if(a>-1)
printf("surprise");
else
printf("No surprise");
这给出了输出“No Surprise”
和
unsigned short a=10,aa=-1;
if(a>aa)
printf("surprise");
else
printf("No surprise");
这给出了输出“No Surprise”