老规矩先准备两个代码
(1)
int i=0; int j=0; for(i=0;i<10;i++) { for(j=0;j<10;j++) { printf("nbn"); } return 0; }
(2)
int i=0; int j=0; for(;i<10;i++) { for(;j<10;j++) { printf("nbn"); } return 0; }
(1)的运行结果有10*10个nb
(2)的运行结果只有10个
因为j的初始变量为0,在i =0进入第一次循环后j从0一直加到10.但是在i=1进入循环后j的值依旧为10并没有被初始化,所以之后的循环都不会做。导致他只能打印10个nb。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)