ist NULL immer 0
-
Hi leute,
muss die konstante NULL eigentlich immer 0 sein. also gibt es auch systeme wo NULL als anderer wert definiert ist?
-
groove2 schrieb:
Hi leute,
muss die konstante NULL eigentlich immer 0 sein. also gibt es auch systeme wo NULL als anderer wert definiert ist?
Jo, aber die laufen mithin nicht
Mir sind schon Compiler untergekommen, denen NULL gefehlt hat, da hat als Abhilfe ein
#define NULL (void*)0
geholfen. Es ist also genau genommen der void* 0.
-
-
NULL ist immer als 0 definiert, deswegen kann mann IMMER statt
if (p != NULL)
einfachif (p)
schreiben.Die tatsächlich gespeicherte Bitfolge des Nullpointers muss nicht 0 sein und kann auch für für verschiedene Pointertypen unterschiedlich sein. Das ist aber nur für den Compiler relevant. 0 wird im Kontext eines Zeigers immer zum Nullpointer ausgewertet, egal was der tatsächlich ist.
-
namespace invader schrieb:
NULL ist immer als 0 definiert, deswegen kann mann IMMER statt
if (p != NULL)
einfachif (p)
schreiben.Usrache und Wirkung vertauscht aber im Grunde genommen stimmts immer noch
-
ich verwende immer 0, nie NULL. ein zeichen statt vier und passt immer.