1. Ako je p pokazivac na objekat dinamicki alociran, onda je dynamic(p)=true.
2. Ako je x staticka promenljiva ili promenljiva na steku, onda je dynamic(&x)=false.
Ja sam napisao sledecu funkciju:
bool dynamic(void *p) {
char x;
return p < &x;
}
Zasnovana je na pretpostavkama da:
1. Stek raste na dole.
2. Dinamicki alocirani objekti su na adresama ispod steka.
Valjda to garantuje POSIX standard, mada nisam siguran. Problem sa ovim resenjem je sto za pokazivac na staticku promenljivu vraca true umesto false.