reuabreliz Geschrieben 24. Dezember 2006 Geschrieben 24. Dezember 2006 Wie kann ich machen dass ich nur strings ins textaray reinschreib wo was drinnsteht. weil sonst gibts dann *******se aus ofstream dateiAus; string xspieler[x]; dateiAus.open(dateiname.c_str(), ios_base::out); for(x=0;x<=19;x++) { if(xspieler[x]!=NULL) { dateiAus << xspieler[x] << endl; dateiAus << highscore[x] << endl; } } Zitieren
Crush Geschrieben 25. Dezember 2006 Geschrieben 25. Dezember 2006 Probiers mal mit if(strlen(xspieler[x])!=NULL) und wenn´s dann immer noch nicht klappt, Initialisiere vorher noch die Strings string xspieler[x]; for (int y=0; y<x; y++) xspieler[y]=""; [/PHP] Zitieren
Klotzkopp Geschrieben 25. Dezember 2006 Geschrieben 25. Dezember 2006 Probiers mal mit if(strlen(xspieler[x])!=NULL)strlen funktioniert nur mit C-Strings (char-Arrays und -Zeiger). und wenn´s dann immer noch nicht klappt, Initialisiere vorher noch die Strings string xspieler[x]; for (int y=0; y<x; y++) xspieler[y]=""; [/PHP]Objekte der Klasse std::string sind automatisch "leer" initialisiert. @reuabreliz: std::string hat eine length-Methode, die kannst du benutzen: [code]if(xspieler[x].length() != 0)[/code] Zitieren
reuabreliz Geschrieben 29. Dezember 2006 Autor Geschrieben 29. Dezember 2006 thx hat mir wirklich geholfen :uli Zitieren
Crush Geschrieben 30. Dezember 2006 Geschrieben 30. Dezember 2006 @Klotzkopp Ich muß zugeben, daß ich in der letzten Zeit nur mit CATUnicodeStrings, CStrings und einer eigenen String-Klasse (RXStrings) zu tun hatte, die ich mir zur Zeit zusammenpfriemel. Mit Stds hab ich seit Ewigkeiten nichts mehr am Hut, dachte aber, die wären 0-terminiert. Zitieren
Klotzkopp Geschrieben 30. Dezember 2006 Geschrieben 30. Dezember 2006 Das Problem mit strlen ist nicht die Nullterminierung (die der Standard übrigens nicht garantiert), sondern dass es keine implizite Konvertierung von std::string in const char* gibt. Dazu hat std::string die Methode c_str. Die liefert dann auch einen Zeiger auf einen nullterminierten String. Aber da ist std::string::length erheblich effizienter. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.