I have a question in allocation of memory for static variables. Please look at the following snippet.
#include<stdio.h> #include<conio.h> void fun(); static int a; void main() { fun(); getch(); } void fun() { static int b; } Can someone please explain me when memory will be allocated for static int b in function fun (before main is executed or when the function is located). I knew that memory for static will be allocated only once, but I want to knew when memory will be allocated for it. Please explain.
I am using 64 bit processor, turbo c compiler, windows 7 operating system.