void f(int i); void f(char *p); ... f(0); Was ist das?
0 ist zuallererst ein int, also wird f(int) aufgerufen.
Die zweite Version von f erhält man mit
f((char*) 0);
oder
const char* NULLCHAR = 0; f(NULLCHAR);