Speicherfunktion für Verschlüsseler läuft nich



  • Hallo ich hab nen Verschlüsseler geschrieben, er läuft auch ganz gut, aber wenn ich das Password dann speicher will, speichert er nur den umgewandelten Wert des letzten chars hier der Code:

    for(unsigned int i=0;i<=strlen(cDezCode)-1;i++)
    	{
        sprintf(cDezPassW,"%d",cDezCode[i]);
    
        cout<<cDezPassW<<endl;
    
    	if(i==strlen(cDezCode)-1)
    	{
    	save(cDezCode,cDezPassW);
    

    Ich weiss zwar auch wieso er nur den letzten wert speichert, aber ich weiss nich was ich tun soll, um den ganzen char array zu speichern...
    Bitte helft mir!!!
    THX 😃 😃



  • Falls nötig poste ich auch noch weitere Code Abschnitte. 😉



  • Was macht save() denn?



  • speichern 😃



  • Vorden schrieb:

    speichern 😃

    Nö bis jetzt gar nichts, weil es nicht definiert ist 😉 (nicht mal deklariert 😮 ;))



  • lol sieht ja auch nich aus als wäre dieser code lauffähig, da hier nur der teil einer funktion steht aber das save(); is schon geklärt, läuft auch aber halt falsch.hier die save() deklaration:

    int save(char cCode[64], string cPassW)
    {
        char cAccept;
    	ofstream dat_aus;
        string sDataName;
    
    	cout<<"\n\n Do you want to save your Password ( Y / N )?"<<endl<<endl;
        cin>>cAccept;
    
    	if(cAccept=='Y'||cAccept=='y')
    	{
    
    		cout<<" Please enter the Name of the file:"<<endl<<endl;
    		cin>>sDataName;
    		cout<<"\n\n";
    		dat_aus.open(sDataName.c_str(),ios_base::out|ios_base::app);
    
    		if (!dat_aus)
    		{
    			cout<<" Data could not be opened!"<<endl<<endl;
                return -1;
    		}
    
    dat_aus<<"Word: "<<endl<<cCode <<endl;
    		dat_aus<<"Encrypted Word: "<<endl<<cPassW <<endl;
    
    		cout<<" Data Saved Successfully!"<<endl<<endl;
    
    	}
    
    	if (cAccept=='N'||cAccept=='n')
    	{
    
    		return -1;
    
    	}
    
    dat_aus.close();
    
    return 1;
    
    }
    


  • Anm: Das ist nicht die Deklaration sondern die Definition von save().

    MfG SideWinder



  • Wird das save() innerhalb deiner Schleife aufgerufen? (Sieht nämlich beim ersten Beitrag so aus)

    Wenn ja, dann solltest du das umstellen.
    Wenn nein, dann weiß ich wo der Fehler liegt. Dazu solltest du dir anschauen was sprintf() genau macht. Tipp: Es hängt den formatierten String nicht an den String an 😉

    Wenn du mal mit dem Debugger über die Schleife gehst, verstehst du vielleicht besser, was ich meine.



  • k versuchs mal thx 😉


Anmelden zum Antworten