C语言,形参为什么不可以说明static型变量
2个回答
展开全部
因为C语言规定 不可以用static 做形参
为什么这么规定,是因为没必要
静态局部变量的特点,是生存周期不被函数限制
每次调用函数时,静态变量还是上次退出的值。 除此外 和普通局部变量没区别
而参数, 每次调用的时候, 形参的值其实就是实参决定的
换句话说,每次调用函数, 形参都会被重新初始化或者说赋值
这样的话, 用static就没什么意义了,以为完全没机会保留上次的值,必然会被重写的。
既然没意义,C就规定了,形参不许static
为什么这么规定,是因为没必要
静态局部变量的特点,是生存周期不被函数限制
每次调用函数时,静态变量还是上次退出的值。 除此外 和普通局部变量没区别
而参数, 每次调用的时候, 形参的值其实就是实参决定的
换句话说,每次调用函数, 形参都会被重新初始化或者说赋值
这样的话, 用static就没什么意义了,以为完全没机会保留上次的值,必然会被重写的。
既然没意义,C就规定了,形参不许static
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询