慕移动8546054
2015-01-31 20:08
问一些可能小白的问题,请大神指教 1.void定义的函数不是不能有返回值的嘛?那为何fn()最后可以输出x=2之类的?(不是问关于循环的) 2.static是静态变量,不就是说经static定义的值是始终不变的嘛?(在fn()循环一次之后,也就是说结果都应是x=2)在VB中是这样的,在这里为何不能这样理解?该如何理解这个问题呢?希望大神帮忙! 谢啦!
这里这个fn(),返回的是printf这个操作,可以归在void类型里面。
静态变量,叫变量的值当然能变化,静态说的是它的存在周期。
static是一个storage class specifier。
定义在一个函数中的static变量,static指的是其生存期(duration)是静态的,也就是它的值只会在程序开始时初始化一次,但这个变量本身会在多次函数调用中共享。
所以在fn()的多次调用中可以一次次地将其乘以2。
void 的函数就是不用 return ,
C语言入门
926210 学习 · 20797 问题
相似问题