Pointer auf character



  • Ich habe die Variable

    char chZeichen

    und den Zeiger

    char* pchar = &chZeichen

    definiert.

    Sowie der Variable deklariert:

    chZeichen = 65;

    Im Programm möchte ich die Speicheradresse auf die der Zeiger zeigt ausgeben.

    die Befehlszeile habe ich geschrieben:

    cout << " *pchar : " << *pchar << endl;

    Ausgegeben wird:

    *pchar : A

    auch die Versin für die Ausgabe:

    cout << " &chZeichen : " << &chZeichen << endl;

    bring die Ausgabe:

    &chZeichen : A

    A ist je das Zeichen für 65 im ASCI-Code. Aber es müßte die Speicheradresse des Zeichens angezeigt werden.

    Was habe ich falsch gemacht???



  • Wenn Du diese Zeile verwendest,
    cout << " pchar : " << pchar << endl;
    bekommst Du die Speicher Adresse.



  • Vielen Dank, aber mir gelingt es trotzdem nicht den Speicherplatz anzuzeigen.
    Ich habe nochmal folgenden Quelltext geschrieben.
    Es wird trotzdem bei allen Varianten nur der Speicherinhalt ' A '
    angezeigt!!!!!

    #include "stdafx.h"
    #include <iostream.h>

    char chZeichen;
    char* pchar = &chZeichen;

    int main(int argc, char* argv[])
    {
    chZeichen = 65;

    cout<<endl<< "* pchar : "<< *pchar << endl;
    cout<<endl<< " pchar : "<< pchar << endl;
    cout<<endl<< "chZeichen : "<< chZeichen << endl;
    cout<<endl<< "&chZeichen : "<< &chZeichen << endl;
    return 0;
    }



  • Ob das "sauber" ist weiß ich jetzt nicht. Denke aber schon 🤡

    #include <iostream>
    using namespace std;
    char chZeichen; 
    char* pchar = &chZeichen; 
    
    int main(int argc, char* argv[]) 
    { 
    chZeichen = 65; 
    
    cout<<endl<< "* pchar : "<< *pchar << endl; 
    cout<<endl<< " pchar : "<< reinterpret_cast<void*>(pchar) << endl; 
    cout<<endl<< "chZeichen : "<< chZeichen << endl; 
    cout<<endl<< "&chZeichen : "<< reinterpret_cast<void*>(&chZeichen) << endl; 
    return 0; 
    }
    


  • Vielen Dank,

    da wäre ich mit meinen Kenntnissen nie drauf gekommen



  • Hm, ich hab auch mehr geraten O🤡



  • Knuddlbaer schrieb:

    Ob das "sauber" ist weiß ich jetzt nicht. Denke aber schon 🤡

    Ne, ist nicht sauber.
    Du verwendest globale Variablen -> boese

    der rest ist OK



  • Hm...

    hätt ich doch vorm past and copy des Fragestellers den krempel weggeschnipselt 🤡 *goldwaage mit dem Fuss wegschieb* 😃


Anmelden zum Antworten