Welche Möglichkeiten gibt es, eine 16 Bit unsigned int Variable in ASCII umzuwandeln? Schon mal Danke für alle Tipps.
:
Verschoben durch User
Hallo Am einfachsten als HEX-Wert in dem man ein Array von "0" bis "F" macht und jeweils ein nibble als Array-Index nimmt. Gruß Ulf
Ingo L. schrieb: > Dafür gibt es die Funktion "utoa". Ich benutze den XC16-Compiler von Microchip, dort gibt es diese Funktion offensichtlich nicht.
Ulf L. schrieb: > Am einfachsten als HEX-Wert in dem man ein Array von "0" bis "F" macht > und jeweils ein nibble als Array-Index nimmt. .... und du meinst dass ein Anfänger das versteht?
Ich möchte z.B. aus dem Wert 0x000A den Ausgabewert in ASCII "00010" machen.
m.n. schrieb: > Übermorgen vor 13 Jahren gab es dies: > Beitrag "schnelle Wandlung long -> ASCII" Themaverfehlung. Setzen, sechs. Dumpf Backe schrieb: > .... und du meinst dass ein Anfänger das versteht?
hello world schrieb: > Ich möchte z.B. aus dem Wert 0x000A den Ausgabewert in ASCII "00010" > machen. Habe jetzt, kaum eine halbe Stunde später, eine Lösung gefunden. Jetzt muss ich erst mal Pause machen ....
1 | #include <stdio.h> |
2 | |
3 | int main() |
4 | {
|
5 | unsigned short value; |
6 | |
7 | value = 0x000A; |
8 | printf ("%05u \r\n", value); |
9 | |
10 | return 0; |
11 | }
|
Dumpf Backe schrieb: > Habe jetzt, kaum eine halbe Stunde später, eine Lösung gefunden. Deine Lösung passt nicht zu deiner Frage. Die Frage zu deiner Lösung wäre: "Wie gebe ich einen uint16_t als String über printf (wo auch immer der hinführt) aus?".
>Ich möchte z.B. aus dem Wert 0x000A den Ausgabewert in ASCII "00010" >machen. Das entspricht aber nicht der ursprünglichen Aufgabenstellung, sondern ist eine reine Wandlung hex->dec. 00010 ist genauso viel ASCII wie 0x000A ...
:
Bearbeitet durch User
Jens G. schrieb: > 00010 ist genauso viel ASCII wie 0x000A ... Schon, aber "0010" ist eine ASCII-Zeichenkette aus 0x30 0x30 0x31 0x30 ggf. noch mit 0x00 terminiert. Oder erwartest Du bei der Wandlung als Ergebnis "zehn"? Warum dieser Beitrag nach OT 'verrutscht' ist weiß vermutlich auch nur eine Laus auf irgendeiner Leber.
Jens G. schrieb: > 00010 ist genauso viel ASCII wie 0x000A ... nee, 00010 ist genauso viel wie 0x0008 http://tpcg.io/EWrbdJ (tutorial point online C compiler)
:
Bearbeitet durch User
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.