www.mikrocontroller.net

Forum: PC-Programmierung Leerzeichen aus String entfernen


Autor: Christian L. (christianlienen)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich habe ein kleines Problem mit einem C-Code.
Vorab kurz zu dem Projekt:
Ich habe einen 1Wire-Bus mit neun Ds18S20 Sensoren. Diese Sensoren sind 
über den Bus mit einem Atmega8 verbunden. Dieser soll die Sensoren 
auslesen und die Daten inkl. der dazu gehörigen ID an eine NSLU2 
schicken, auf der ein Programm läuft, welches die empfangenen Daten in 
eine Datei sichert. Aus dieser Datei holt sich dann ein Apache2 Server 
die Daten, um sie auf einer Intranetseite zu präsentieren.
Nun habe ich jedoch das Problem, das der Atmega8 bei der Umwandlung der 
Fühlerwerte in die menschenlesbare Form vor die EINstelligen Zahlen ein 
Leerzeichen setzt. Wieso er das macht weiß ich leider auch nicht. Dieses 
Leerzeichen ist jedoch jetzt das Problem an der Sache, da der Wert in 
JEDEM Fall, dh. auch gerade bei einstelligen Fühlerwerten direkt hinter 
einen = Zeichen stehen muss, damit die Temperatur an den Apache Server 
(das läuft dann über SSI) gegeben wird. Gibt es nun eine Möglichkeit, 
dieses Leerzeichen aus dem String zu entfernen? Das Leerzeichen steht 
jedoch nicht am Anfang des Strings, der String besteht nämlich aus der 
ID und dem Wert.

Im Anhang habe ich jetzt mal die C-Datei des Controllers. Das Programm 
auf der NSLU2 macht ja nichts anderes, als die Daten zu lesen und dann 
in eine Datei zu schreiben...

Vielen Dank schonmal!

Gruß
Christian

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> sprintf( s, "%4d.%01d�C", temp >> 4, (temp << 12) / 6553 );
dann lass doch mal die 4 nach dem ersten % weg

Autor: Christian L. (christianlienen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Peter,
danke für deine schnelle Antwort. Kannst du mir vielleicht auch 
erklären, was diese 4 zu bedeuten hat?

Gruß
Christian

Autor: zaphod (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
man sprintf
oder auch "sprintf format string"
Mannomann, das sind bloody basics...

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Christian L. schrieb:
> Hallo Peter,
> danke für deine schnelle Antwort. Kannst du mir vielleicht auch
> erklären, was diese 4 zu bedeuten hat?

du hast sie doch geschrieben, willst du damit sagen das du etwas 
geschrieben hast wovon du keien Ahnung hast?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.