C++ Int zerlegen

  • Themenstarter Themenstarter Shadow1911
  • Beginndatum Beginndatum
Gibt es auch eine Möglichkeit einen solchen String zu erstellen und zu belegen?
Äh, ich würde sagen, du meinst eine einfache Zuweisung?
C++:
std::string str = "123456";
Ansonsten wäre ein simples char-Array die einfachste Lösung.
C++:
char buffer[7];
buffer[0] = '1';
buffer[1] = '2';
// usw.
buffer[6] = '\0'; // Kennzeichen für Stringende
Gruß
MCoder
 
Also ich will als Endergebnis haben das mein ursprünglicher String mit
Wert1
Wert2
Wert3
Wert4
Wert5
Wert6
am Ende umgedreht ist. Also:
Wert6
Wert5
Wert4
Wert3
Wert2
Wert1
aber trotzdem als String und mit einer UNBESTIMMTEN Zahlenanzahl.
Wie das am Ende passiert ist mir eigendlich relativ egal.
Bisher schonmal ein Danke an alle die mir versuchen zu helfen.
 
Danke.
Eine Frage wäre da noch. Wie zerlege ich einen String in einzellne chars?
ich habe bis jetzt
C++:
	//Auszug:
	char p10=string1.substr (10,10);
	char p11=string1.substr (11,11);
	char p12=string1.substr (12,12);
	char p13=string1.substr (13,13);
	char p14=string1.substr (14,14);
	char p15=string1.substr (15,15);
Da kommt aber immer die Fehlermeldung:
IntelliSense: Es ist keine passende Konvertierungsfunktion von ""std::basic_string<char, std::char_traits<char>, std::allocator<char>>"" in ""char"" vorhanden.
 
C++:
char c0=string1.c_str()[0];
char c1=string1.c_str()[1];
char c2=string1.c_str()[2];

Mit substr kriegst du nur wieder einen String. Es können ja auch mehrere Zeichen (zB 10 bis 18) gefragt sein.
 
'substr' liefert den Datentyp 'string'; du müsstest also auf 'char' casten. Weniger umständlich ist allerdings der Zugriff über den Index:
C++:
char p1  = string1[0];
//...
char p10 = string1[9]; 
char p11 = string1[10]; 
// usw.
Gruß
MCoder

//EDIT: Casten ist hier Blödsinn :-)
 
Zuletzt bearbeitet:
Jetzt kommt das nächste Problem was vorher nicht da war -.-
C++:
cin >> binar;
	string string2 (binar);
	string::reverse_iterator rit;
	//
	char p0=string2.c_str()[0]; 
	char p1=string2.c_str()[1];
	char p2=string2.c_str()[2];
	char p3=string2.c_str()[3];
	char p4=string2.c_str()[4];
	char p5=string2.c_str()[5];
	char p6=string2.c_str()[6];
	char p7=string2.c_str()[7];
	char p8=string2.c_str()[8];
	char p9=string2.c_str()[9];
	char p10=string2.c_str()[10];

Fehler
Fehler 1 error C2664: 'std::basic_string<_Elem,_Traits,_Ax>::basic_string(const std::basic_string<_Elem,_Traits,_Ax> &)': Konvertierung des Parameters 1 von 'int' in 'const std::basic_string<_Elem,_Traits,_Ax> &' nicht möglich
 
Zurück