Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » String in 2D-Array füllen

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
20.07.2007, 12:05 Uhr
Norbertbaum



Hallo,

leider ist bei mir kaum noch was hängen geblieben von C++

ich möchte den String: "Hallo@4#Lool@3" ..... also er ist unbekannt lang

in ein Array schreiben:
Hallo - 4
Lool - 3


wie kann ich es am besten machen?
oder gibt mir erst einmal ansätze, damit ich es probieren kann


vielen Dank
schönen Freitag noch

Dieser Post wurde am 20.07.2007 um 12:06 Uhr von Norbertbaum editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
20.07.2007, 12:27 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)


Guckst du in die Rätselecke
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
20.07.2007, 12:48 Uhr
Norbertbaum



Häää
was will ich mit der Rätselecke?

ihr seit gemeint
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
20.07.2007, 12:55 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)


www.fun-soft.de/showtopic.php?threadid=18319
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
20.07.2007, 15:56 Uhr
xXx
Devil


Nja ist aber mit C++ einfacher zu machen ^^

C++:
std::string str("Hallo@4#Papa@2");
std::map<unsigned int, std::string> found;
for (std::size_t pos = str.find_first_of('@'); pos != std::npos; pos = str.find_first_of('@'))
{
    std::size_t pos_end = str.find_first_of('#', pos + 1);
    if (pos_end == std::string::npos)
        throw std::logical_error("Invalid string!");

    std::ostringstream ss(str.substr(pos + 1, pos_end));
    unsigned int num = 0;
    ss >> num;
    found[num] = str.substr(0, pos);
    str.erase(0, pos_end);
}
oder so ... ist aber nicht gerade optimiert ^^
Das bleibt dann bei dir ...

Dieser Post wurde am 20.07.2007 um 15:58 Uhr von xXx editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: