Forum: Mikrocontroller und Digitale Elektronik Array Inhalt zusammenführen


von Markus (Gast)


Lesenswert?

Beispielcode

In einem Array ist z.B. dieser Wert gespeichert.

Array[] = {"F",4,2,0,"\n"};
...
...
Datentyp Variable = 420;

In der Variable soll nur die Zahl aus dem Array ausgelesen werden.

Kann mir jemand weiterhelfen?

von Peter II (Gast)


Lesenswert?

Markus schrieb:
> In der Variable soll nur die Zahl aus dem Array ausgelesen werden.

sollte mit atoi funktionieren.

von Ryan O. (Firma: HFu) (gorfindel)


Lesenswert?

Prüfe ob der Char eine Ziffer ist (müste Hex 0x30 bis 0x39 sein) wenn ja 
rechne den char minus 0x30 (Hex) dann schauen ob der nächste wert auch 
wieder eine Zahl ist, wenn ja alte zahl mal 10 rechnen und wieder plus 
char minus 0x30(hex) wenn du immer bevor du addierst mit 10 
multiplizierst geht das sogar direkt in einer schleife. Sobald der 
naechste Wert keine Ziffer mehr ist kannst du aus der schleife raus 
springen.

von Markus (Gast)


Lesenswert?

Die Funktion atoi() wird vom meinem STM32 nicht unterstützt,
bzw. habe ich keine Libary.

von Peter II (Gast)


Lesenswert?

Markus schrieb:
> Die Funktion atoi() wird vom meinem STM32 nicht unterstützt,
> bzw. habe ich keine Libary.

sicher? Das ist es Grundfunktion von C.

von Markus (Gast)


Lesenswert?

Vielen Dank Ryan Odenwald
Es Funktioniert :D

von Dirk B. (dirkb2)


Lesenswert?

Standard-C kennt noch strtol.

Mit scanf kann man das auch machen.

Achte bitte darauf, das du einzelne Zeichen in einfache Hochkommas 
setzt.

"A" ist ein Stringliteral, Du erhälst die Anfangsadresse des ersten 
Zeichens.
'A' ist das Zeichen A

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.