C++ Int zerlegen

S

Shadow1911

Hallo,
ich habe mit C++ angefangen und wollte wissen wie man eine beliebige Integer Variable z.B. 123456 in einzelner chars zerlegt.
Also will ich aus
zahl = 123456

teil1 = 1
teil2 = 2
teil3 = 3
teil4 = 4
teil5 = 5
teil6 = 6

Danke schonmal im Vorraus
 
Kennst du dich mit Arrays schon aus?

C++:
int zahl;
...
char einzeln[12];
sprintf(einzeln,"%d",zahl);

sprintf funktioniert wie printf, es schreibt aber nicht auf den Bildschirm, sondern in char-Array.
 
Kennst du dich mit Arrays schon aus?

C++:
int zahl;
...
char einzeln[12];
sprintf(einzeln,"%d",zahl);

sprintf funktioniert wie printf, es schreibt aber nicht auf den Bildschirm, sondern in char-Array.

Dankeschön.
Mit Array hab ich mich noch nicht beschäftigt, weil ich die noch nie genutzt (und gebraucht) habe.
 
einzeln[0] ist die erste Stelle,
einzeln[1] die zweite,
einzeln[2] die dritte usw.

Die Anzahl der Stellen bekommst du in dem Fall mit strlen(einzeln)
 
Die modernere (C++ like) Variante wäre die Verwendung eines Stringstreams.
C++:
#include <sstream>

int zahl = 123456;

std::stringstream sstr;
sstr << zahl;
// sstr.str().size() liefert die Anzahl der Ziffern
// sstr.str()[0] enthaelt die 1
// sstr.str()[1] enthaelt die 2
// usw.
Gruß
MCoder
 
Die modernere (C++ like) Variante wäre die Verwendung eines Stringstreams.
C++:
#include <sstream>

int zahl = 123456;

std::stringstream sstr;
sstr << zahl;
// sstr.str().size() liefert die Anzahl der Ziffern
// sstr.str()[0] enthaelt die 1
// sstr.str()[1] enthaelt die 2
// usw.
Gruß
MCoder

Danke =)
Ich glaube das ist die Variante die ich brauche.
 
Gibt es auch eine Möglichkeit einen solchen String zu erstellen und zu belegen?
z.B.
C++:
#include <sstream>
using namespace std;
.
.
.
stringstream sstr;
sstr.str()[0] = 1
sstr.str()[0] = 2
...
 
Ich brauche beides.
Den 1. Teilw ie ich eine Zahl splitte habe ich jetzt verstanden.
Jetzt will ich einen String erstellen und ihm manuell die Werte zuweißen und dann in eine Variable packen.
 
Zurück