| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 380 人关注过本帖
标题:请教高手!
只看楼主 加入收藏
cjl5186
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-3-27
收藏
 问题点数:0 回复次数:1 
请教高手!
int f()
{
static int i=0;
int s=1;
s+i;i++;
return s;
}
main()
{int i,a=0;
for(i=0;i<5;i++) a+=f()
printf("%d\n",a)
}
这个是怎么循环的呀,看不懂!每次i 和S 得知怎么算?
搜索更多相关主题的帖子: return 
2008-03-27 22:54
now
Rank: 1
来 自:广州
等 级:新手上路
帖 子:544
专家分:0
注 册:2007-11-9
收藏
得分:0 
f()函数中static int i;i定义为静态函数内部变量,不受主函数中的i影响,并且只初始化一次,在整个程序运行期间,一直占据着固定的内存,
例第一次调用f(),i值为0,然后i++,变为1,然后第二次调用,i并没有重新初始化,值仍为1,i++后就为2,依此。。。。
还有这里s+i;LZ是不是写错了,应为s+=i;

GIS
Geographic Information System
你在哪里?——》你的坐标?
2008-03-28 00:13
快速回复:请教高手!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015349 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved