Hallo zusammen, ich sitze hier gerade vor meinem ersten kleinen Projekt (ATmega 128 mit AVR-Studio) und möchte nur einen String formatiert auf ein Display bringen, und alleine das bringt mich schon an den Rand der Verzweiflung... Ich bin absoluter Neuling in C, wahrscheinlich ist genau das schon das Problem. Tutorials lesen allein haben mir nicht geholfen. Also, die Ausgabe auf dem LCD funktioniert schon mal, aber ich habe einen String, sagen wir mal 1234 in einer Variable. Dieser soll nun ggf. vorne mit 0 aufgefüllt werden damit er immer 5 Zeichen lang ist und zusätzlich soll noch ein Trennzeichen "." nach den ersten zwei Ziffern eingefügt werden. Klingt simpel, ist es bestimmt auch, leider nicht für mich. Nach mehrere frustreichen Stunden wende ich mich daher an Euch. Würde mich über eine kleine Starhilfe freuen. Gruß, Muckel
Ein String in einer Variablen klingt verdächtig. Vermutlich hast du eine Zahl in einer Variablen die vom Typ Integer ist und willst diese nun formatiert ausgeben.
1 | printf("%05f",Variable / 100.0); |
sollte funktionieren. Ansonsten guckst du hier: http://www.acm.uiuc.edu/webmonkeys/book/c_guide/2.12.html#printf
> Ich bin absoluter Neuling in C, wahrscheinlich ist genau das schon > das Problem. Allerdings. Die generelle Empfehlung lautet: mach die ersten Schritte auf dem PC. Da hast du eine viel bessere Debug-Umgebung. > aber ich habe einen String, sagen wir mal 1234 in einer Variable. > Dieser soll nun ggf. vorne mit 0 aufgefüllt werden damit er immer > 5 Zeichen lang ist. Na ja. Wenn es nur um die Ausgabe geht, musst du den String ja nicht manipulieren. Es reicht ja, wenn du vor dem eigentlichen String eine entsprechende Anzahl an Leerzeichen ausgibst. Ein Benutzer weiß ja nicht, wias du intern gemacht hast, der sieht nur, dass vor "Hugo" noch ein Leerzeichen steht. Ob das dort steht, weil du " Hugo" ausgegeben hast, oder ob du vorher ein einzelnes Leerzeichen ausgegeben hast und dann da "Hugo" drann geschrieben hast, kann man ja im Ergebnis nicht mehr unterscheiden. Dazu musst du wissen, wie lang der String eigentlich wirklich ist (strlen macht das) und daraus dann errechnen, wieviele Leerezeichen du brauchst. Und die gibst du dann in einer Schleife entsprechend aus, ehe du hinten nach den String drann pappst. Solche Spielchen sind tatsächlich oft eine der ersten Übungen für C-Neulinge. Und du wärst damit auf einem PC mit seiner einfacheren und besseren Debug-Umgebung wesentlich besser aufgehoben (und natürlich einem ordentlichen C-Buch)
Karl Heinz Buchegger schrieb: > (und natürlich > einem ordentlichen C-Buch) Jepp, ein paar Stunden Tutorials reicht nicht, zumal falls man da nur zuschaut und einem die Augen zufallen. Buch lesen und selbst probieren, von Anfang an.
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.