Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » An den Anfang einen Strings 2 Zeichen einfügen

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
18.08.2003, 14:38 Uhr
~pmw
Gast


Hallo!

Wie kann ich an den Anfang eines Strings zwei binäre Zeichen einfügen?


C++:
      zeichen[min] = 2;
      data = (char)zeichen[min] + (char)0 + data;




Code:
no match for `int + std::string&' operator




C++:
      zeichen[min] = 2;
      data.insert((char)zeichen[min]+(char)0,0);




Code:
Das Programm stürzt beim Ausführen ohne Fehlermeldung ab!



Code tags korrigiert

Dieser Post wurde am 18.08.2003 um 14:54 Uhr von virtual editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
18.08.2003, 14:58 Uhr
virtual
Sexiest Bit alive
(Operator)


Gegeben ist wohl folgendes, wenn ich richtig verstehe:

C++:
char erstesZeichen = \1;
char zweitesZeichen = \2;
std::string zeichenkette;


Einfügen am Anfang geht dann zB so:

C++:
zeichenkette.insert(0, erstesZeichen);
zeichenkette.insert(1, zweitesZeichen);


Ich denke, du hast bei deinem Insert einfach die parameter vertauscht: der erste gibt die Position, der zweite das Zeichen an...
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)

Dieser Post wurde am 18.08.2003 um 14:59 Uhr von virtual editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
18.08.2003, 15:08 Uhr
~pmw
Gast


Leider funktioniert der Code bei mir nicht. Der Compiler meldet folgendes:


Code:
invalid conversion from `char' to `const char*'
initializing argument 2 of `std::basic_string<_CharT, _Traits,

 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
18.08.2003, 15:18 Uhr
virtual
Sexiest Bit alive
(Operator)


Oh, very sorry (mein Fehler):

C++:
zeichenkette.insert(zeichenkette.begin(), zweitesZeichen);
zeichenkette.insert(zeichenkette.begin(), erstesZeichen);


oder

C++:
zeichenkette.insert(0, 1, erstesZeichen);
zeichenkette.insert(1, 1, zweitesZeichen);


oder

C++:
char add[2] = { erstesZeichen, zweitesZeichen };
zeichenkette.insert(0, add, 2);


oder ...
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
18.08.2003, 15:25 Uhr
~pmw
Gast


Danke! Jetzt klappt es.
 
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: