problem with static...

int main(){ static int i; printf("%d", &i); sleep(10);}I compile the code and run the ./a.out in background(&)and I run the same ./a.out again. The value of the addressof i is same. can any one explain me why. I think two are different processes and they should have their separate data segment.Thanks In advance.