AnsiString .Lenght funktion



  • int debug = Edit1->Text.Length();
            for ( int i = 1; i <= (32 - debug); i++){
                    Edit1->Text = "0" + Edit1->Text;
            }
    

    der code funktioniert einwandfrei so wie er soll. es werden soviele nullen aufgefüllt bis es 32 stellen sind.

    for ( int i = 1; i <= (32 - Edit1->Text.Length()); i++){
                    Edit1->Text = "0" + Edit1->Text;
            }
    

    hier ist das nicht der fall.. es ist ein komisches verhalten, im grunde sollte es genau das machen wie oben. aber tut es nicht

    Edit: _________________________________________________________________________

    okay tut mir leid sorry ^^ hab es verstanden, die länge verändert sicht ja... ^^ okay danke xDDD



  • Die Länge des Textes erhöht sich immer, da immer eine 0 angefügt wird. (32 - Edit1->Text.length()) ist deshalb in jedem Schleifendurchlauf um 1 größer und i ist immer kleiner als dieser Wert. Deshalb läuft es auf eine Endlosschleife hinaus.

    Edit: OK, du hat es selbst gefunden! Manchmal muss man eben doch alles lesen!!!


Log in to reply