adressen eines char* sichern
-
hallo allerseits,
wie kann ich die offsets der speicheradressen der einzelnen chars eines char* abspechern?
ich habe sowas versucht, schlägt jedoch fehl:
char* &pBuffer; static int* m_pPagePosition; m_pPagePosition = reinterpret_cast<int*>(&pBuffer); // grab address
-
Also wenn ich die Frage richtig verstehe:
Warum willstn das machen?! Das erste Zeichen ist 0 Byte vom Anfang weg, das zweite 1 Byte, das zehnte 9 Byte usw... Achja:
char *text = "Hallo, Welt"; char *ptr = text + 4; // Zeichen 'o' int offset = ptr - text;Ansonsten: Bitte neuformulieren.
PS: Dass das da oben fehlschlägt seh ich zwar auf den ersten Blick, trotzdem ist "schlägt fehl" keine ausreichende Fehlerbeschreibung. Das da oben jedenfalls dürfte nichtmal compilieren

-
Was genau willst du erreichen? char* enthalten doch schon die Adresse des dahinterliegenden Zeichenarrays.
char* text = "Ich bin ein String."; printf("%p\n",text); //Adresse des ersten Zeichens 'I' printf("%p\n",text+4);//Adresse des fünften Zeichens 'b'
-
THX
Ich wollte die position innerhalb des Strings ermitteln:
int offset = ptr - text;bin ich komplett am verblöden, sollte mich schlaffen legen???