Seltsame Ausgabe



  • Hallo ich hab gerade folgendes Compiliert:

    #include <iostream>
    #include <fstream>
    using namespace std;
    
    int main()
    {
    
    int ftp;
    
    string user,pw;
    
    cout<<"Eingabe: ";
    cin>>user;
    
    cout<<"Password: ";
    cin>>pw;
    
    ofstream datei("test.txt");
            datei<<cout<<"User :"<<user;
            datei<<cout<<"Password "<<pw;
    
            //batch upload script starten
            system("start ftp_transfer.bat");
    
    return 0;  
    }
    

    Bei "Eingabe" habe ich "testuser" eingeben
    bei "Password" habe ich "testpw" eingeben und in der Text Datei steht nun folgendes:

    0x4433c4User :testuser0x4433c4Password testpw

    Jetzt meine frage was bedeuten diese Sachen "0x4433c4" "0x4433c4"



  • nimm mal das cout aus deinem dateistream



  • cout ist genauso ein Stream wie datei (ofstream). Durch den "<<"-Operator wird cout zum rechtsseitigen Operanden (links steht ja schon datei). Du speicherst in dem Fall die Speicheradresse von cout!

    P.S.: Wenn du hier regelmäßig verkehrst, dann melde dich doch gleich an!



  • Thx für die antworten.

    Ps. Ich hab hier ein Account nur ich muss mal die Daten raussuchen der Zettel fliegt irgendwo rum^^



  • sollte wohl eher der operator void* greifen der dir die Speicheradresse gibt und diese wird dann im filestream ausgegeben.


Anmelden zum Antworten