为了账号安全,请及时绑定邮箱和手机立即绑定

请大神帮忙啦!

问一些可能小白的问题,请大神指教 1.void定义的函数不是不能有返回值的嘛?那为何fn()最后可以输出x=2之类的?(不是问关于循环的) 2.static是静态变量,不就是说经static定义的值是始终不变的嘛?(在fn()循环一次之后,也就是说结果都应是x=2)在VB中是这样的,在这里为何不能这样理解?该如何理解这个问题呢?希望大神帮忙! 谢啦!

正在回答

3 回答

这里这个fn(),返回的是printf这个操作,可以归在void类型里面。

静态变量,叫变量的值当然能变化,静态说的是它的存在周期。

0 回复 有任何疑惑可以回复我~

static是一个storage class specifier。

定义在一个函数中的static变量,static指的是其生存期(duration)是静态的,也就是它的值只会在程序开始时初始化一次,但这个变量本身会在多次函数调用中共享。

所以在fn()的多次调用中可以一次次地将其乘以2。

0 回复 有任何疑惑可以回复我~
#1

慕移动8546054 提问者

明白了,谢啦!
2015-02-01 回复 有任何疑惑可以回复我~

void 的函数就是不用 return ,

0 回复 有任何疑惑可以回复我~
#1

慕移动8546054 提问者

好的,大概可以理解了!谢了!
2015-02-01 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926209    人
  • 解答问题       20797    个

C语言入门视频教程,带你进入编程世界的必修课-C语言

进入课程

请大神帮忙啦!

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信