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 Christian, > > > Warum ist Print eigentlich schneller? > > Der einzige Unterschied ist doch die durchlaufene Schleife: > > > > print: > > for a=0 ... s[31]-1 > > { > > } > > > > printlength: > > for a=0 ... length-1 > > { > > } > > > > Da sollte Printlength doch schneller sein, vorallem bei kurzen Strings. Z.b. wenn ich nur > > so 3 Zeichen hab. > > Oder bricht die Schleife bei erreichen des letzten Zeichens von selbst ab? (Nullterminierung?) > > Die Übergabe eines weiteren Parameters an die Funktion kann's doch nicht sein oder doch? > > > > "printlength()" ist lansamer, weil Du zuerst mit "str.length(s)" die Länge > ermittelst, und das dauert nunmal etwas (Rechen-)Zeit. > > Die for-Schleife bei "print" wird entsprechend der Anzahl der Zeichen eines Strings > durchlaufen. Bei einem String mit vier Zeichen wird die Schleife auch nur viermal > durchlaufen. > Übergibst Du bei "printlength()" einen konstanten Wert, dann sind beide Funktionen > gleichschnell. > > Übrigens, dasselbe gilt auch für die hwcom und swcom-Funktionen send() und print() > > MfG André H. > >