C++ String in Char und Int splitten

m3x

Ensign
Registriert
Aug. 2005
Beiträge
218
Habe folgendes Problem.
Ich ich habe eine case/switch um in einen bestimmten Menüpunkt zu springen. Also lese ich ganz normal mittels "cin" einen buchstaben in eine char variable ein. Problem ist jetzt nur, dass ich in einem Sonderfall nicht nur die "Auswahl" treffe (also nur einen char eintippe) sondern sozusagen noch einen Parameter übergebe also zb "e 2332" (hintere ist eine nummer vom typ int). Habs jetzt Provisorisch gelöst in dem ich nach der char abfrage nach dem e nochmal ein cin mit der int mache aber das ist eigetnlich nicht sinn der sache und mich stört es einfach ;-)

Also, wie kann ich einen char bzw string einlesen und den dann in ein einzelnes char und eine int splitten!?

Betsen Dank!
 
Du könntest cin.getline(str, länge) benutzen, dann ein switch(str[0]) machen und den Wert mit atoi(&str[2]) konvertieren.
 
Zuletzt bearbeitet:
Geht leider nicht:

Code:
 'atoi': Konvertierung des Parameters 1 von 'char' in 'const char *' nicht möglich
 
Cypog lebt noch, dinge soll's geben.
Wie stehts um LiveSA:MP..

@m3x:
Wenn du schon in C++ arbeitest, bietet es sich nicht an, String zu verwenden?
Ansonsten, du musst definitiv das & vergessen haben. ;)

Der Code klappt bei mir einwandfrei:
Code:
char *test = "e 2333";
if(strlen(test)>2) /*Parameter existiert*/
    std::cout<<&*(test+2);
 
benutzt du framework oder was anderes?
unter VS9 muss man aufpassen auf die Projekteigenschaften.
Bei Unicode Projekten... eventuell _watoi oder ähnliches! musst du halt gucken.
 

Ähnliche Themen

Zurück
Oben