Static variables have the property of retaining their value even after they have been removed from their scope! As a result, static variables retain their previous value in their previous scope and are not re-initialized in the new scope. Below examples illustrate about static variable.

```
#include<stdio.h>
void test()
{
int a=10;
static int b=20;//initializing static variable
a++;
b++;//b is not re-initialized
printf(" the values of a and b are %d ,%d \n",a,b);
}
int main()
{
int i=0;
while(i<10)
{
test();
i++;
}
return 0;
}
```

the values of a and b are 11 ,21

the values of a and b are 11 ,22

the values of a and b are 11 ,23

the values of a and b are 11 ,24

the values of a and b are 11 ,25

the values of a and b are 11 ,26

the values of a and b are 11 ,27

the values of a and b are 11 ,28

the values of a and b are 11 ,29

the values of a and b are 11 ,30

Hope above code works for you and Refer the below Related Codes to gain more insights. Happy coding and come back again.

**Also read:**