Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C Quellcode formatieren: <code>Quellcode</code> BASIC Quellcode formatieren: <basic>Quellcode</basic> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! -> I > > > > Hallo, > > > > ich möchte in einen bestehenden String den Wert eines Integers in HEX-Darstellung einfügen. > > > > Beispielsweise kann der String lauten "Messwert: $.... HEX" und die word Variable Messwert > > > > enthält den (dezimalen) Wert 3456. Dann will ich bekommen "Messwert: $0D80 HEX". > > > > > > > > Habe dazu ein Prozedur geschrieben, die das Einfügen der 4 Hex-Ziffern übernehmen soll: > > > > > > > > void IntToHex(word Wert, char Ziel[], word Offset) > > > > { int hilf; > > > > > > > > hilf = Wert & 0x000F; Ziel[Offset+3] = (hilf<10)? '0' + hilf : 55 + hilf; // 55 = 'A'-10 > > > > hilf = Wert>>4 & 0x000F; Ziel[Offset+2] = (hilf<10)? '0' + hilf : 55 + hilf; > > > > hilf = Wert>>8 & 0x000F; Ziel[Offset+1] = (hilf<10)? '0' + hilf : 55 + hilf; > > > > hilf = Wert>>12 & 0x000F; Ziel[Offset] = (hilf<10)? '0' + hilf : 55 + hilf; > > > > } > > > > > > > > und wollte die aus dem Hauptprogramm folgendermassen rufen: > > > > > > > > void main(void) > > > > { > > > > word Messwert; > > > > char Text[50]; > > > > > > > > Text = "Messwert: $.... HEX"; > > > > Messwert = 3456; > > > > IntToHex(Messwert, Text, 11); > > > > } > > > > > > > > Das Programm lässt sich fehlerfrei kompilieren, aber der Probelauf bricht ab mit der Meldung > > > > "Array Index zu gross bei Adresse 25399 in Thread 0 " > > > > > > > > Was ist falsch? > > > > > > Ist es möglich, das Du nicht die aktuelle Beta, sondern eine ältere Beta Version benutzt? In Version > > > 1.99.2 ist der Bug eigentlich behoben. > > > > > > Gruss Peter > > > > Hallo Peter, > > > > stimmt: ich nutze Beta 1.98, da ich beim Übertragungs-Versuch mit Beta 1.99.2 stets Abbruch > > bekomme. > > > > Ich werde also warten, bis der Nachfolger von 1.99.2 fertig ist -- bin ja schon beruhigt, dass ich > > die Beschreibung wohl richtig verstanden habe! > > > > Dank + Gruß, > > Wolfgang > > Es gab einen Bug in der 1.98, da wurde der Array Index versehentlich auch bei Zeigerübergabe (ByRef) > ausgewertet. Da bei einem Zeiger die Array Größe nicht konstant ist, werden dann willkürlich > Fehler gemeldet. > Ein zweiter Bug hat den Array Index Check auch bei der Anzeige von Warnungen eingeschaltet. Wenn > Du also alle Warnungen in den Optionen ausschaltestet, wird dieser Bug auch bei der 1.98 nicht > auftreten. > > Gruss Peter