请大神帮忙啦!

来源:5-11 变量存储类别

慕移动8546054

2015-01-31 20:08

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

写回答 关注

3回答

  • linkin55
    2015-04-10 20:59:54

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

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

  • onemoo
    2015-01-31 21:51:20

    static是一个storage class specifier。

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

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

    慕移动854...

    明白了,谢啦!

    2015-02-01 10:21:51

    共 1 条回复 >

  • _Exception
    2015-01-31 20:45:19

    void 的函数就是不用 return ,

    慕移动854...

    好的,大概可以理解了!谢了!

    2015-02-01 10:22:47

    共 1 条回复 >

C语言入门

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

926210 学习 · 20797 问题

查看课程

相似问题