C&C++   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了了解C中的循环大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我很难在C中找出以下简单的for循环代码.

int j=20;
for(int i=0,j; i<=j ; i++,j--)     
    printf("i = %d and j = %d \n",i,j);

打印输出

i=0 and j=2
i=1 and j=1

为什么它不以j = 20开始而是打印j = 2并在j = 1之后停止.

但是当我使用这段代码

int j=20;
for(int i=0,j=20; i<=j ; i++,j);

它开始正常

i=0 and j=20 upto ... i=9 and j= 11

有什么东西我错过了吗?

解决方法

你是.在for构造中声明j会创建一个新的(作用域)j,其值与外部不同.如果你没有初始化它,你会得到分配时在内存中发生的任何垃圾.

像这样的变量称为“自动”变量,并在程序的堆栈上分配.如果需要,可以分配更多的堆栈空间.当它们超出范围时(实际上当函数返回时),通过将它们全部弹回来清除它们.

当需要下一位自动存储时,会发生同样的事情,然后您可以获得在堆栈中留下的任何位模式作为新变量值.

@H_197_42@

大佬总结

以上是大佬教程为你收集整理的了解C中的循环全部内容,希望文章能够帮你解决了解C中的循环所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。