Forum: Mikrocontroller und Digitale Elektronik Stringkette in INT umwandeln aber die ersten beiden Zeichen soll ignoiert werden.


von Andreas (Gast)


Lesenswert?

Hallo,

wie oben beschrieben such ich nach einer lösung wie ich eine 
Zeichenkette INPUT[20] in INT umwandeln kann, wobei INPUT[0] und 
INPUT[1] nicht umgewandelt werden sollen. oder kurz gesagt ich möchte 
nur INPUT[2 bis 20] in INT umwandeln.

von Rene H. (Gast)


Lesenswert?

Welche Sprache?

von Andreas (Gast)


Lesenswert?

achso stimmt in C für Atmega16.

von Markus F. (mfro)


Lesenswert?

1
int num;
2
3
num = atoi(&input[2]);

von Rene H. (Gast)


Lesenswert?

Dann würde ich eine for Schleife nehmen.

Also
1
for (int i=2; i<20; i++)
2
   ..

von Rene H. (Gast)


Lesenswert?

Markus F. schrieb:
> int num;
>
> num = atoi(&input[2]);

Dachte ich erst auch, aber ein int mit 17 Stellen?

von Andreas (Gast)


Lesenswert?

atoi(&input[2]) damit bekomme ich doch nur die Daten aus der 2 raus und 
der rest?

von Markus F. (mfro)


Lesenswert?

1
int num;
2
3
num = atoi(&input[2]);

Andreas schrieb:
> und
> der rest?

steht in jedem C-Buch...

von Rene H. (Gast)


Lesenswert?

Nein, alles bis zur 0 Terminierung.

von Andreas (Gast)


Lesenswert?

Also mit

int num;

num = atoi(&input[2]);

klappt danach hatte ich gesucht hatte gerade beim ersten probiern nur 3 
zahlen eingegeben, klar das dann nur die letzte ausgegeben wird xD.

von Peter II (Gast)


Lesenswert?

Andreas schrieb:
> num = atoi(&input[2]);

etwas lesbare finde ich:
1
num = atoi(Input+2);

von Andreas (Gast)


Lesenswert?

ah ok macht das ganze auch etwas verständlicher.

gibt es eigentlich auch ein utoa für int32_t?

von Andreas (Gast)


Lesenswert?

bzw uint32_t

von Andreas (Gast)


Lesenswert?

hat sich erledigt. ultoa

von Penibler Mensch (Gast)


Lesenswert?

Tja, und alle vergessen den Fall, falls der String kürzer als zwei 
Zeichen ist...

So ist das Fundament für den nächste Absturz schon gelegt...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.