";"不仅有结束语句的作用,在一些情况下它代表着空语句
#include<stdio.h>
int main()
{
for (int i = 1; ;i++)
{
printf("I love you");
}
return 0;
}
在上述代码中 死循环加上打印
当给for后面加上;之后
#include<stdio.h>
int main()
{
for (int i = 1; ; i++);
{
printf("I love you");
}
return 0;
}
结果为
一张空 是因为for后面的";"相当于空语句,改变了for语句原来的结构,运行起来就是相当于空语句做了循环体,所以跑起来就是相当于一直在运行那个空语句,所以运行结果一整张都是空!
这个点不容易被注意到,有个啥子错误啥的也很难去发现它,还是值得好好琢磨琢磨的!