函数指针作为形参_函数的形参都属于全局变量吗|天天速讯


(资料图片)

1、除了C++的引用类型参数,C/C++的任何函数的形式参数都是局部变量,和普通的函数内自动变量一样是自动存储类对象,具有自动存储期(一般实现中也在栈上),在退出函数作用域时自动被释放,区别只不过在参数列表中通过实参按值传递(复制)给形参进行初始化,而不是在函数体内初始化而已。

2、因此,结论很明确,没有冲突。

3、无论函数在哪里,也不管被传递的实参的存储类是什么(全局/局部静态/自动),只要不是引用类型,参数传递时就进行了复制,函数内对参数的操作是对这个副本的操作,和实参没有任何关系。

4、解决方案很简单,如LS所说,直接使用全局变量就行了,用不着传递参数(不仅达不到预期目的而且参数值传递导致的复制可能会使效率显著降低)。

5、====[原创回答团]。

本文到此分享完毕,希望对大家有所帮助。

关键词: