如果在某种情况下,希望函数中的局部变量的值在函数调用结束后不消失而保留原值,这时就应该指定该局部变量为()

答案大类: 小类: 2023-07-20 12:18:28

如果在某种情况下,希望函数中的局部变量的值在函数调用结束后不消失而保留原值,这时就应该指定该局部变量为()ECH傲朋学习网

A.自动变量ECH傲朋学习网

B.外部静态变量ECH傲朋学习网

C.内部静态变量ECH傲朋学习网

D.寄存器变量ECH傲朋学习网

正确答案:CECH傲朋学习网

如果希望函数中的局部变量的值在函数调用结束后不消失而保留原值,可以将该局部变量指定为内部静态变量。内部静态变量在函数内部声明时使用关键字 static 进行标记,这样会导致该变量的生命周期在整个程序运行期间都保持,而不是像普通的自动变量一样在函数调用结束后被销毁。ECH傲朋学习网

其他选项的解释:ECH傲朋学习网

A. 自动变量:函数内部普通声明的局部变量就是自动变量,它们的作用域仅限于函数内部,在函数调用结束后会被销毁。ECH傲朋学习网

B. 外部静态变量:在函数外部声明的静态变量,可以在整个程序中被访问,但它的作用域限于定义它的源文件,无法在其他源文件中直接访问。ECH傲朋学习网

D. 寄存器变量:使用 register 关键字声明的局部变量是寄存器变量,编译器会尽量将其存储在CPU寄存器中,以提高访问速度。但是,register 关键字只是对编译器的建议,编译器可以忽略它,因此并不保证变量会真正存储在寄存器中。而且寄存器变量不能取地址,因此不能用于需要取地址的情况。ECH傲朋学习网

版权声明

声明:有的资源均来自网络转载,版权归原作者所有,如有侵犯到您的权益 请联系本站我们将配合处理!

分享: