#include <stdio.h> #include <stdlib.h> unsigned int i; unsigned int fact(unsigned int i) { static int j; printf("i %p\n", &i); printf("j %p\n", &j); return (i==0) ? 1 : i * fact(i - 1); } int main(int argc, char *argv[]) { printf("i %p\n", &i); printf("%d\n", fact(atoi(argv[1]))); }