函数内部声明的静态变量的值是什么?

问题描述:

一个静态整型变量在函数内部声明。函数调用时,变量加1。该函数被调用并返回3次。第三个函数调用时变量的值是多少?返回值是多少?函数内部声明的静态变量的值是什么?

+3

请显示您的功能/代码。 – Shravan40

+0

#include using namespace std; int foo(); int main(){ int a; a = foo(); a = foo(); cout Gurpreet

int foo() { 
    static int x = 0; 
    x++; 
    return x; 
} 

关键字开始static行为来扩展变量的程序的生命周期的寿命;例如初始化只发生一次,然后变量保留它的值 - 不管它是什么时候 - 将来所有调用foo()。

当我们声明一个类的成员为静态时,它意味着无论创建多少个对象,只有一个静态成员的副本。静态成员由类的所有对象共享。

所以它会返回3,如果它的值与0