70,012
社区成员




#include"stdio.h"
int main()
{
while(0)
{
printf("while(0)的循环执行了。\n"); //很明显,这段不会执行!
}
//下面问题来了! 数值0的ASCII码是48(十进制),而使用ASCII码时却出现了问题,见下面:
int a='\x30';//数值0的ASCII码十六进制是:'\x30'
while(a)
{
printf("while(a)的循环执行了。\n"); //此段代码得到了执行!!!!!
}
//下面的问题更加离奇,使用‘\0’作为循环条件时不会执行循环程序
while('\0')
{
printf("while('\0')的循环执行了。"); //这个循环也没有得到执行
}
printf("执行了循环外的程序!\n");
return 0;
}