Für dieses Forum muß Javascript im Browser aktiviert werden!
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> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > Hallo Franz, > > Zuerst: Fange bitte keinen neuen Thread für das gleiche Thema an. > Ich hab' deshalb das Posting in den alten Thread verschoben. > > Jetzt zum Problem: > > Ich habe vergeblich versucht das Problem zu reproduzieren. > Bei mir kommt es zu keinerlei Fehlermeldungen. > Viell. postest Du kurz ein (kleines) kompilierbares Programm(mit allen Variabeldefinitionen), > welches diesen Fehler verursacht. > > Aber ich vermute, Du benutzt alte Dateien. > Besser gesagt, Du benutzt nicht die aktuelle Compiler-DLL. > > Die erste Version der Compiler-DLL hatte einige Bugs im Bezug auf > Strings und Bytearrays. > > Außerdem setzt Du eine For-Schleife falsch ! > Bei negativen Schritten muß immer ein Vergleichsoperator mit rein. > (siehe Handbuch Seite 84/85) > Ansonsten lautet der Vergleich in der For-Schleife immer so: a ...<=b > Somit wird diese bei > cnt_row=(send_buff_size-1) ... 1 step -1 > nie durchlaufen, außer (send_buff_size-1) ist kleiner gleich 1. > Dann wird die Schleife aber 254 bzw. 32767 bzw. 2147483647 mal durch, je > nach Variabel-Typ von cnt_row. > > MfG André H. > > > > hoppla.. > > > > Hallo, > > es funzt einfach nicht - was ist hier falsch, dass es beim Ausführen immer wieder zum Stacküberlauf kommt: > > > > Und zwar ist das Array so definiert: > > > > const send_buff_size=12; //Send Buffer Zeilen Anzahl > > const send_buff_amount_data=10; //Send Buffer Daten Feld Anzahl > > > > type Column // Spalten > > { > > string col[send_buff_amount_data]; > > }; > > type Buffer > > { > > Column row[send_buff_size]; > > }; > > Buffer send_buffer; > > > > mit dieser Funktion sollte immer die letzte freie Zeile ausgegeben werden, jedoch kommt es zum Stacküberlauf > > beim Ausführen der Simulators und in der CC2 funzt es gar net: > > > > function get_last_row () returns int //Übergabe des letzten Eintrags des send_buffers > > { > > for cnt_row=(send_buff_size-1) ... 1 step -1 //überprüfen jeder Zeile des send_buffers > > { > > ISSI_b=send_buffer.row[cnt_row].col[0]; //Übernahmer der Zeilennummer aus der for-Schleife > > empty=""; > > if (not (strx.comp (ISSI_b,empty))) //Wenn im erstes Feld befüllt, dann die Zeilennummer rückgeben > > return cnt_row; > > } > > } > > > > > > Würde mich, nachdem ich schon viele, viele Stunden damit verbracht habe, wirklich über jede Idee freuen! > > mfg, > > Franz