
int main(){ int x = 1,y = 1; for( ; y ; printf("%d %d ",x,y)) { y = x++ <= 2; } printf("\n"); return 0;}@H_419_12@ 它给出了类似的输出
2 13 14 0@H_419_12@ 我不明白y = x< = 2的输出和含义.
解决方法 y = x <= 2由2部分组成:(1)x和(2)赋值y = ... x只是意味着增量后:你取x的值然后你将x增加1. 赋值y = …将y的值设置为1(如果x <= 2为真)或0(如果x <= 2为假) 现在棘手的部分是你的for循环: for( ; y ; printf("%d %d ",y))@H_419_12@ 请注意,在for循环中,每次循环后都会打印printf(“%d%d”,y)(增量条件).
并注意终止条件; y;这意味着只要您的y为1,您将保持循环.结合它们,你得到的结果是:
2 1 3 1 4 0@H_419_12@ 顺序看起来像这样:
//first x = 1,y = 1y = x++ <= 2; //x = 1 <= 2 returns 1,x++,x becomes 2,y becomes 1printf("%d %d ",y)// you get your first 2 1y = x++ <= 2; //x = 2 <= 2 returns 1,x becomes 3,y)// you get your 3 1y = x++ <= 2; //x = 3 <= 2 returns 0,x becomes 4,y becomes 0printf("%d %d ",y)// you get your 4 0@H_419_12@ 总结 以上是内存溢出为你收集整理的在C中y = x <= 2是什么意思?全部内容,希望文章能够帮你解决在C中y = x <= 2是什么意思?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)