Forum: Mikrocontroller und Digitale Elektronik Wieder mal Ärger mit putsf.


von H.Joachim S. (crazyhorse)


Lesenswert?

Nachdem in nun printf () aus dem Programm verbannen musste (aus 
Platzgründen, ist nachträglich noch was hinzugekommen) klappt das nicht 
so richtig mit putsf :-(

send_line(2);
putsf ("time: ");
send_char2 (time.hour);
putchar ('.');
send_char2 (time.minute);
putchar ('.');
send_char2 (time.second);

liefert dann auf dem Terminal:

(2)time:
         17.20.30

putsf hängt ein new line an, grr.
Welche Alternativen gibts?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Using fputs(str,stdout) instead, performs the same operation as 
puts(str) but without appending the newline character at the end.

von H.Joachim S. (crazyhorse)


Lesenswert?

fputs kennt der Compiler (CodeVision) nicht :-(
Andere Ideen?

von holger (Gast)


Lesenswert?

void myputs(char *s)
{
 while(*s++)
 {
   putchar (*s);
 }
}

von H.Joachim S. (crazyhorse)


Lesenswert?

Prima! Wenn auch nicht ganz richtig (1.Zeichen wird verschluckt)

void my_putsf (char *s)
{while (*s)
  {putchar (*s++);
  }
}

Danke dir, das löst das Problem.
Wozu in aller Welt hängt das LF bei putsf () mit dran? Hat mich schon 
mehrfach geärgert.

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.