Wert konvertieren, wie?

Hodata

Mitglied
Hallo,

ich ~> Anfänger!

Ich möchte gern die Länge eines Strings von einer integer abgeziehen:

xpos=30-name.length();

da meckerts...

Wie muß ich das richtig machen?
 
Nur eine Warnung. Schlag doch bitte mal in deiner Dokumentation nach, was sie bedeutet...

Code:
xpos=30-(int)name.length();
 
Ich hab doch keine Doku...

Alles was ich hab, ist das Buch von Andre´ Willms "C++ Programmierung lernen".

Da steht sowas nicht drin...:rolleyes:

Danke!

...
 
size_t Konvertierung zu Integer kann zu Datenverlust führen!

Wenn du stringname.length() verwendest, dann bekommst du als Rückgabewert einen Wert vom Typ string::size_type und der soll hier nach int konvertiert werden, drum Meckerts.
Was du brauchst ist eine Variable vom Typ string::size_type der du das Ergebnis deiner Berechnung 30 - name.length(); zuweisen kannst.
Also sieht das ganze dann so aus:

string::size_type xpos;
xpos = 30 - name.length();


oder alternativ:
xpos = 30 - name.size();

Ich kann das leider grade nicht so testen, aber sollte funktionieren.
Mit xpos kannst du dann arbeiten wie mit einer int-Variable.
 
xpos=30-(int) name.length()

funktioniert.

size() probier ich noch...

Danke!

Ich habe das MS Visual Studio 7.0, komme damit jedoch noch nicht so recht klar.
Ich muß mich mal um ein gutes Buch kümmern.
 
Zurück