Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: Klasse, Stefan! Kategorie: Verschiedenes (von Andi - 14.12.2004 14:51)
 Als Antwort auf Re: Klasse, Stefan! von Christian - 14.12.2004 11:11
Hallo Christian!

Ja, ich weiß, jeder Funktions- oder Prozeduraufruf innerhalb einer Funktion/Prozedur füllt den
Stack, der leider nicht allzu groß ist. Ich denke aber, die Lösung dafür wäre einfach funktionell größere
Prozeduren zu schreiben, also solche die bestenfalls keinen Aufruf mehr enthalten.
Der Compiler könnte aber auch einfach warnen, wenn zuviele Aufrufe gemacht werden.
Ich werde das mal in Zukunft angehen.

Zum Assembler: Ohne Goto könnte man in Assembler ja auch gar keine Programmverzweigungen
realisieren. Wie du schon sagst ist das Goto in Assembler absolute Grundlage für Konstrukte wie
IF, DO, LOOP, SELECT,... Aber Anwendungen werden nur selten in Assembler programmiert,
da zu 99% immer ein Compiler den Assemblercode aus einer Hochsprache heraus erzeugt. Das heißt:
Dieses Assembler Goto ist in der Hand des Compilers, nicht in der des Programmierers.
Und ein Compiler kann mit Gotos absolut sicher umgehen, das kann ein Programmierer von
größeren Anwendungen aber nicht.

Klar, du musst ein Goto gelegentlich verwenden, aber hauptsächlich geht es darum
Konstrukte wie

#abc
...
 Goto def
...
if a<>2 goto abc

#def

umzuwandeln in einen gut lesbaren code

Do
...
  Exit Do
...
Loop Until a<>2

Sicher ist der Unterschied noch nicht groß, aber stell dir vor du hast mehrere solcher Schleifen
ineinander geschachtelt...

 Antwort schreiben

Bisherige Antworten: