[1] Nell'assunzione che un intero occupi 16 bit, l'uso dell'operatore sizeof() appare ridondante, ma consente una migliore portabilità del sorgente su macchine che gestiscano gli interi, ad esempio, in 32 bit.

[2] E' importante sottolineare che l'offset è calcolato in termini di interi e non di byte. Chi avesse dubbi in proposito farà bene a rivedere la chiacchierata sull'aritmetica dei puntatori.

[3] E' lo stesso indirizzo passato come parametro se oltre il limite superiore dell'area attualmente allocata vi è sufficiente memoria libera per ampliarla semplicemente spostandone il confine.

[4] Se si alloca memoria per puntatori far, come si accennerà tra breve, si parla di far heap.

[5] Chi ama le cose difficili può dichiarare il puntatore nella funzione che chiama quella in cui avviene l'allocazione, e passarne a questa, come parametro, l'indirizzo. Il valore restituito da malloc() deve allora essere memorizzato nell'indirezione del puntatore ricevuto come parametro.

[6] Le funzioni farmalloc() e farrealloc() restituiscono comunque puntatori far: per trasformare l'indirizzo restituito in un puntatore huge è necessaria un'operazione di cast:

   double huge *hPtr;
   ....
   hPtr = (double huge *)farmalloc(100*sizeof(double));

Il numero di byte occorrenti è calcolato moltiplicando il numero di double (100 nell'esempio) per la dimensione del dato double (operatore sizeof()).