作者erabcd ()
看板Examination
标题Re: [课业] c语言询问
时间Sun May 26 21:38:20 2013
简单的写一下
第一次呼叫--> bar(5) --> tmp++之後为1, value++後为6 --> 6+1=7
第二次呼叫--> bar(5) --> tmp++之後为2, value++後为6 --> 6+2=8
第三次呼叫--> bar(8) --> tmp++之後为3, value++後为9 --> 9+3=12
因为tmp是static,所以会keep上一次的值
应该是这样,如果有错烦请各位高手指正
※ 引述《fishtory (fishtory)》之铭言:
: [课业] 国考课业相关问题,非历届考题的讨论,如学理观念的厘清。
: #include<stdio.h>
: int bar (int value) {
: static int tmp =0;
: tmp++; value++; return value + tmp;}
: void main(){
: int x=5; printf("%d\n", bar(x));
: printf("%d\n", bar(bar(x)));}
: value的变化 5,5,8,12
: 输出 5,8,12
: 请问有人明白呢?
: 100年地特统计组 资料处理科
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 124.8.0.147