.| Autor | Beitrag |
|---|---|
|
000 25.12.2000, 19:29 feigling |
Ich habe nochmal eine Frage zu C++.
Was bedeutet bei C++ z.B. "Set==Null" ?
P.S. Was bedeutet in manchen Codes dieses Zeichen *
|
|
Profil || Suche |
|
001 25.12.2000, 23:40 IH82W8 |
Hi Feigling, NULL ist ein sogenannter NULL-Zeiger, den man z.B. verwenden kann, um zu prüfen, ob ein Objekt vorhanden ist (if (pPointer!=NULL) ... ) Wenn man Zeiger auf Datenstrukturen erschafft, sollte man sie immer zuerst auf NULL setzen. Man kann ihn jedoch auch häufig als Äquivalent zu 0, 0x0000 etc. antreffen.
IH82W8 -- |
|
Profil || Suche |
|
002 26.12.2000, 02:50 Kriz |
Stimme zu... NULL ist ein Makro: #define NULL 0x0000 Aber erkläre dem armen Feigling auch, was ein Zeiger ist und nicht nur was er macht!!! Also, mal salopp gesagt ist ein Zeiger eine "besondere" Variable. Ein Zeiger speichert aber keinen Wert, sondern eine Adresse (weil zu jedem Datensegment eine Adresse im Speicher zwecks Wiederauffindung existiert). Ein Zeiger auf ein INT oder FLOAT... int *ptr; bedeutet nix anderes, als das unter dem Namen ptr die Startadresse eines INT-Datentyps liegt. Startadresse daher, weil laut Definiton ein INT mindestens 16 und höchstens 32 Bit Speicherplatz belegt. Also zeigt der Zeiger ptr auf das erste Bit des Datentyps INT im Speicher. Danach kommen noch 31 weitere Bits, ehe INT zuende ist. Das nur nebenbei... Um auf den Inhalt der Speicheradresse, die in ptr gespeichert ist, zugreifen zu können, muß man den Zeiger ptr dereferenzieren, also über die Speicheradresse auf den eigentlichen Wert von ptr zugreifen: int speicherinhalt = *ptr; In der INt-Variablen Speicherinhalt steht dann der Wert, den ptr besitzt (wie dieser auch immer aussehen mag). Genauer: int wert = 4;
Merke: In Zeigern stehen nur ADRESSEN, keine Werte!!! Werden Zeiger mit dem Verweisoperator * benutzt (*ptr), geht es um WERTE, ohne * geht es um ADRESSEN... Der Rest mal irgendwann in meinem C++ Skript... Cu --K:R-I)Z++ |
|
Profil || Suche |
|
003 26.12.2000, 14:22 feigling |
Jau, vielen Dank, werde gleich mal versuchen, das zu verstehen. -- |
|
Profil || Suche |

