#include <stdio.h> int main(void) { char i=250; for(i<0;i++;i=0,printf("%d", i)); return 0; }
在这个程序中,输出是 0。据我所知,for 循环应该有第一个参数作为初始化,然后是条件,然后是增量。但是在这个问题中,初始化是最后发生的,并且代码仍然给出有效的结果。有人可以解释一下吗?
c syntax evaluation for-loop
c ×1
evaluation ×1
for-loop ×1
syntax ×1