|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 盼高手解释一下!
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
478
人关注过本帖
标题:
盼高手解释一下!
只看楼主
加入收藏
lele2010
等 级:
论坛游侠
帖 子:84
专家分:121
注 册:2010-1-23
结帖率:
100%
楼主
收藏
已结贴
√
问题点数:5 回复次数:2
盼高手解释一下!
#include<stdio.h>
fun (int p)
{
int k=1;
static t=2;
k=k+1;t=t+1;
return (p*k*t);
}
main()
{
int x=4;
fun(x);
printf("%d",fun(x));
}
答案是32!请各位解释一下!
搜索更多相关主题的帖子:
解释
2010-02-03 10:10
举报帖子
使用道具
赠送鲜花
Alen0128
等 级:
业余侠客
帖 子:171
专家分:222
注 册:2009-12-26
第
2
楼
收藏
得分:5
注意static,表示静态存储。它将函数中t定义为静态存储变量,这种变量是程序编译时分配的一个固定的存储单元,它只在程序结束的时候被释放(在运行过程中,不会被释放)。
#include<stdio.h>
fun (int p)
{
int k=1;
static t=2;
k=k+1;t=t+1;
return (p*k*t);
}
main()
{
int x=4;
fun(x);
//第一次调用函数时,t值被改变,为3;值没有被释放
printf("%d",fun(x));
//第二次调用,t由3变为4,所以结果为32
}
-不想让你发现我 凌乱的脚步 ,我努力 跟上你的速度
2010-02-03 10:27
举报帖子
使用道具
赠送鲜花
fionawings
等 级:
新手上路
帖 子:4
专家分:6
注 册:2010-2-3
第
3
楼
收藏
得分:0
static t=2; //只会被定义一次
main()
{
int x=4;
fun(x);
//第一次调用函数时,t值被改变,为3
printf("%d",fun(x));
//第二次调用,“static t=2;”不再定义,直接执行t=t+1
}
2010-02-03 12:57
举报帖子
使用道具
赠送鲜花
3
1/1页
1
快速回复:
盼高手解释一下!
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.019130 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved