Hallo, kann mir bitte jemand sagen, wie man in so ein Array einen Integerwert "einbindet"! Geht das überhaupt? Ich habs schon mit itoa und sprintf versucht. char MT_eintr1[] = " Uhrzeit "; char MT_eintr2[] = ; char MT_eintr3[] = " Spannung "; char MT_eintr4[] = " Helligk. einst."; char MT_eintr5[] = " Spannung einst."; Tobias
Meine Quick and Dirty methode wäre mit memcpy. Du kopierst an die Stelle des gewünschten Anfangs den als String aufbereiteten Integerwert (itoa aus temp-char *). Achte darauf, nicht über das Ende der Variablen zu schreiben und achte auf das abschließende \0, sofern du mit Stringpointern arbeitest. Edit: Statt memcpy geht natürlich bei kurzen Zeichenketten auch ne Selbstgebaute Funktion eventuell effektiver. char *temp = "3 V"; MT_Eintr3[10]=temp[0]; MT_Eintr3[11]=temp[1]; MT_Eintr3[12]=temp[2]; Dabei treten dann natürlich weitere Probleme auf, die du lösen musst (Länge der einzufügenden Variable)
hast du das so gemeint?
char Buffer[1];
itoa( flags.dcf_rx, Buffer, 1 );
memcpy(MT_eintr2[0],flags.dcf_rx,1);
geht nähmlich nicht!
Aber trotzdem schon mal Danke für deine Antwort!!!
Tobias
Gast
#938762
Ein simples "geht nicht" ist hier nicht besonders hilfreich. Eine Beschreibung, was bei dem Versuch passiert würde den der Dir helfen will weiterbringen. Das
1 | |
nicht geht wundert mich garnicht, falls der dritte Parameter die Zahlenbasis sein soll. Abgesehen davon, wäre noch zu klären, ob Dein itoa eine Null anhängt oder nicht.