记录一个小知识点。
最近看到一个代码,认为逻辑有问题,就自己测试了一下,原来是自己没理解好。
int i = 45;
if (i > 40)
{
printf("i>40 \n");
}
else if (i > 30)
{
printf("i>30 \n");
}
else if (i > 20)
{
printf("i>20 \n");
}
else if (i > 10)
{
printf("i>10 \n");
}
结果输出了“i>40”,后面的都没有输出。原来第一个if符合了以后,就算后面的都符合也没用,因为被else给屏蔽过去了。