Wie ich bisher gelernt habe, ist ein Zeiger ein Platz im Speicher (Heap), wo eine Speicheradresse gespeichert ist, ich verstehe das wirklich und kann damit so leicht umgehen, aber die Frage ist: wenn es nur eine Adresse speichert, dann ist es Größe ist symmetrisch mit der Größe des Speichers des Computers, und so alle Zeiger haben die gleiche Größe, dann warum Zeiger haben Typen, wenn ein Zeiger X ist definiert als Integer zum Beispiel, es hat die gleiche Größe wie der Poiter Y was ist definiert char, warum gibt es einen Compiler oder Laufzeitfehler, wenn ich eine Adresse von Doppel - oder einen beliebigen Typ diffrenet von Integer - zu X, und das gleiche für Y? Gibt es eine zusätzliche Komponente in der Struktur von Zeigern, die den Typ bestimmt?Was ist die wahre Struktur eines Zeigers?
Ich möchte nur die wirkliche Struktur von Zeigern wissen, wie genau sie funktionieren, und warum sie Typen haben.
Vielen Dank im Voraus :)
HINWEIS: Wenn ich eine Sprache geben haben, ist es C++
Ein Zeiger ist nur ein Wert, den der Compiler als Adresse interpretiert. Es kann auf dem Heap, auf dem Stapel oder nur vorübergehend in Registern gespeichert werden. Und Sie brauchen keine Zeiger, um die Möglichkeit zu haben, über das Ende eines Arrays hinauszugehen. Das können Sie genauso gut mit Indizes tun. –
Na gut, lerne etwas Neues. –