以下是引用diaoxiong007在2009-9-5 21:50的发言:
...
而只有语句才必须在后面加“;”,所以以上的写法不对。...
语句本身就已经使用分号结尾了,再加就多余了。...
而只有语句才必须在后面加“;”,所以以上的写法不对。...
for (i=0; i<n; i++);也是合法的语句,因为从语法上来说没有任何错误。只是不是我们所要表达的意思而已。比如:
程序代码:
#include <stdio.h> int main(void) { int i, j = 0; for (i=0, j++; i< 5; i++); printf("i = %d, j = %d\n", i, j); return 0; }
输出的结果:
i = 5, j = 1
.
我们看到循环还是进行了5次,所以i最终的结果是5。上面的代码其实相当于:
程序代码:
#include <stdio.h> int main(void) { int i, j = 0; for (i=0, j++; i< 5; i++) { NULL; } printf("i = %d, j = %d\n", i, j); return 0; }
[ 本帖最后由 prankmoon 于 2009-9-6 00:46 编辑 ]