In C, variables with block scope enter context when they are declared (not at the top of the block), go out of context if any (non-nested) function is called within the block, come back into context when the function returns, and go out of context at the end of the block. In the case of automatic local variables, they are also allocated on declaration and deallocated at the end of the block, while for static local variables, they are allocated at program initialization and deallocated at program termination.
in c variables with block scope enter context when they are declared (not at the top of the block) go out of context if any (non-nested) function is called within the block come back into context when the function returns and go out of context at the end of the block in the case of automatic local variables they are also allocated on declaration and deallocated at the end of the block while for static local variables they are allocated at program initialization and deallocated at program termination