a me da errore...

c'è sia la funzione che la macro, in particolare la macro è in stdio.h ed è:
codice:
#define getc(_stream)     (--(_stream)->_cnt >= 0 \
                ? 0xff & *(_stream)->_ptr++ : _filbuf(_stream))
e compilando il tuo codice ho ben 12 errore tra cui il primo (in realtà questo è uno warning, ma fa capire) dice:
warning C4003: not enough actual parameters for macro 'getc'
mah...