/*
This code is a demonstration that C reuses memory for local variables.
If you know exactly which functions will be running, you can do a
cute demo where you know what value "unitialized" local variables will have.
*/
#include <stdio.h>
void set_zero() {
int x = 0;
}
void inc() {
int y; y++;
}
void dec() {
int z; z++;
}
int val() {
int w;
return w;
}
int main(int argc, char * argv[]) {
printf("setting to 0\n"); set_zero();
printf("value is %d\n", val());
printf("inc twice\n");
inc(); inc();
printf("value is %d\n", val());
printf("dec once\n");
dec();
printf("value is %d\n", val());
return 0;
}