Zitat:
in C gibts pointer, die machen C so irrsinnig schnell
erklärung:
das gibts in basic z.b. nicht, da werden bei anweisungen riesige datenblöcke im speicher verschoben.
bei C (nicht nur bei C) können pointer auf solche Datenblöcke verweisen, so können diese Blöcke bleiben, wo sie sind.
das war nur mal so eine erläuterung, hat vielleicht nichts damit zu tun, aber interessant ises trotzdem
|
C und auch PASCAL sind deshalb schnell, weil deren Quelltext in Maschinensprache umgewandelt (kompiliert) wird, ehe man das Programm ausführen kann. BASIC wird Schritt für Schritt im Quelltext abgearbeitet (Interpreter). Daher können viele Code-Optimierungen nicht im voraus durchgeführt werden. Es ist nicht gesagt, daß in BASIC bei Zuweisungen Datenblöcke verschoben werden müssen. BASIC wurde nie standardisiert. Es gibt etliche Hersteller von BASIC-Versionen, die alle nicht kompatibel miteinander sind und deren Eigenheiten haben. Im normalen BASIC liegt es auf der Hand, daß bei einer Variablen-Zuweisung der Speicherinhalt dupliziert werden muß. Doch trifft das doch auch auf C zu!
