问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C程序中 int i;for(i=0;;) 与 for(int i=0;;) 两种定义循环变量的方式有什么区别?

发布网友 发布时间:2022-05-15 03:06

我来回答

3个回答

热心网友 时间:2023-10-05 15:10

两种均可,前者i在for循环外部定义,则i的值在程序未结束之前就一直存在,i所占的内存空间直到程序结束时才释放;后者的i在for循环内部定义,则当for循环结束时,i所占的内存空间就被释放了。一般建议用后者的方式,因为当程序较大时,前者更占内存,这样程序在运行时CPU的负担就更大,内存溢出的风险更大。

热心网友 时间:2023-10-05 15:10

首先说明一点,C语言必须将定义都放最前面,后者是不对的,但是C++允许将定义不放最前面
有区别,前者 i 的生存期不单在for里面,还在for外面,后者 i 的生存期就只在for里面,看个简单的例子
int i;
for (i = 0;;)
{
}
if (i == 10) // 正确,因为 i 的生存期在for外面

for (j = 0;;)
{
}
if (j == 10) // 错误,因为 j 的生存期在for里面

热心网友 时间:2023-10-05 15:11

简单说,第一种循环结束,i的空间不会释放,i还活着。第二种循环结束i的空间就被释放了
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
说课包括哪些方面 说课内容包括()。 如何在手机百度上删除对话记录? 结核病是什么样的疾病? 曹丕17岁得了肺痨,明知自己命不长久,还要强争王位,是不是很自私呢?_百... 古代小说常出现的病名 急求一篇"生活小窍门"(500字)的作文 至今最有什么小妙招 健康的戒烟方法 笔记本电池锁死是什么原因引起的? int i for (i=1; i<=10;i++) for (i=1; i<=10;i++) 会是什么结果 IFORCOM注册过商标吗?还有哪些分类可以注册? iformid函数的使用方法 IFOR是什么意思? 亚太财产保险有限公司秦皇岛中心支公司怎么样? 治口腔溃疡小妙招,有什么好的治疗妙招啊? 治口腔溃疡小妙招有哪些? 小妙招巧治口腔溃疡? 甜粽子好吃还是咸粽子好吃?? 肉粽还是甜粽? 卫生间门的宽度是多少 你你觉得甜粽好吃还是肉粽? 甜粽和肉粽相比,你更喜欢哪一个? 找高人帮我填下结婚请柬,在线等 结婚请帖怎么写?在线等,谢谢 古代没有洗衣粉,没有肥皂,怎么洗衣服? 在没有洗衣粉的年代,古人们洗衣服时用的是何物? 古代没有洗衣粉,欧洲人和中国人怎么洗衣服的? 查询自己信用卡办理进度对自己办理信用卡有没有什么影响? 洗衣粉的替代品有那些 for循环中的,i的值什么是这样? 关于i++和for for (i=1;i<=n-1;i++) { k=i; for(j=i+1;j<=n;j++) i int i;for(i=0;i<=5;i++);i=? C语言中 for(;i;i--)与for(;--i;)效果是不是一样的 int i; for(i=1;i<100;i+=2)i++; 循环次数??? void main() {int i for(i=0;i<5;i++) 玻璃瓶里装什么好看 大冒险家的分集剧情 《琉璃2》上映时间是什么时候? 琉璃2上映时间2022年几月几号 2021年琉璃二是八月六份播出吗 琉璃在泰国播出,你期待第二部吗? 琉璃美人煞播出时间是2O2O年2月27日吗? 单日播放量最高五部剧:《琉璃》只能第二,你知道第一播量有多少吗? 毒app上的耐克篮球鞋比实体店的便宜吗? 毒上次日达为什么便宜 中国在2021年11月份美债余额 今天股市怎么了+跌的这么惨? 节能汽车将减半征收吗?