Dein Problem sind ernsthafte Defizite in der Programmiersprache C.... hier werden ja die 16 zeichen gedruckt/ausgegeben. Von wo fange ich an zu zählen? Was genau bedeutet diese \r\n?
Du sendest mit SerWrite(...) einen sogenannten String, das ist eine Folge von char, die in einem Array angeordnet sind. Details siehe: http://www.henkessoft.de/C++/C/arrays_pointer.htm
Schaue Dir den ASCII-Zeichencode an: http://de.wikipedia.org/wiki/ASCII
... und die Steuerzeichen: http://de.wikipedia.org/wiki/Steuerzeichen
Die Steuerzeichen sind genau ein Zeichen:
\r 13 0x0D ^M \r CR Carriage Return Wagenrücklauf/Druckkopfrücklauf
\n 10 0x0A ^J \n LF Line Feed Zeilenvorschub
Das r kommt von return und das n von newline.
d.h. diese Steuerzeichen werden als jeweils ein Zeichen mitgezählt.
Wenn ich das oben richtig zähle, sind das 17 Zeichen. PrintInt(...) fängt direkt dahinter an. Willst Du eine Zeile tiefer beginnen, sendest Du vorher ein \r\n, manchmal reicht auch schon ein \n (MS Windows) alleine.
Lesezeichen