Wie groß ist ein Zeiger?

Ist die Größe eines Zeigers, der gleichen Größe wie der Typ seine zeigen auf, oder haben die Zeiger immer eine Feste Größe haben? Zum Beispiel...

int x = 10;
int * xPtr = &x;
char y = 'a';
char * yPtr = &y;

std::cout << sizeof(x) << "\n";
std::cout << sizeof(xPtr) << "\n";
std::cout << sizeof(y) << "\n";
std::cout << sizeof(yPtr) << "\n";

Was würde der Ausgang von diesem sein? Würde sizeof(xPtr) zurück 4 und sizeof(yPtr) 1 zurück, oder würden die 2 Zeiger tatsächlich zurück die gleiche Größe? Der Grund, warum ich Frage, ist weil die Zeiger speichern eine memory-Adresse und nicht die Werte der jeweiligen gespeicherten Adressen.

InformationsquelleAutor der Frage MGZero | 2011-07-19

Schreibe einen Kommentar