Suppose the following minimal code:
#include char character = \'c\'; int main (void) { char character = \'b\'; printf(\"The current value
Normaly, the global variable will stay. Since your local variable only shadows the name, it doesn't affect the storage.
But it could also depend on linker settings. Linker could optimize the unsused global variable out.