Re: weitere Probleme mit Datentyp Char Kategorie: Programmierung C (von PeterS - 14.04.2006 15:33) | ||
Als Antwort auf weitere Probleme mit Datentyp Char von Hannes - 9.04.2006 16:59 | ||
| ||
Hallo Hannes, was Du hier ansprichst ist ein Bug. Da immer intern mit 16bit gerechnet wird, muÃ? bei 8 Bit signed Werten das Vorzeichen erwtiert werden. Das geht an einigen Stellen schief. Gut das Du das gefunden hast. Gruss Peter > Hallo, > > es funktioniert auch die for-Schleife nicht korrekt, sobald die Zahlenwerte negativ werden. > Seh ich da irgendwas falsch, oder hab nur ich ein Mega32 Modul mit diesem Effekt???? > > > Ausgabe mit Datentyp Char: > > Interpreter gestartet - 2kb RAM > 5+ 4+ 3+ 2+ 1+ 255+ 254+ 253+ 252+ 251+ 250+ 249+ 248+ 247+ 246+ 245+ 244+ 243+ > 242+ 241+ 240+ 239+ 238+ 237+ 236+ 235+ 234+ 233+ 232+ 231+ 230+ 229+ 228+ 227+ > 226+ 225+ 224+ 223+ 222+ 221+ 220+ 219+ 218+ 217+ 216+ > > > Ausgabe mit Datentyp Int: > > Interpreter gestartet - 2kb RAM > 5+ 4+ 3+ 2+ 1+ -1- -2- -3- -4- -5- > > > > _________________________________________________________ > > char a; > > void main(void) > { > for (a=5; a>-6; a--) > { > if (a > 0) > { > Msg_WriteInt(a); > Msg_WriteChar(0x2B); // " + " > Msg_WriteChar(0x20); // Leerzeichen > } > if (a < 0) > { > Msg_WriteInt(a); > Msg_WriteChar(0x2D); // " - " > Msg_WriteChar(0x20); > } > AbsDelay(500); > } > while(1); > } > > __________________________________________________________ | ||
Antwort schreiben Antworten: Bis wann kann man mit dem korrigierten Interpreter/Compiler rechnen? (von Hannes - 24.04.2006 8:01) |
Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum