Ansicht:   

#159668 (C) Syntaxfehler? - [Error(ccom)] type redeclaration of Durchschnitt (pc.coding)

verfaßt von Mr. Teflon, 06.09.2009, 16:43:35
(editiert von Mr. Teflon, 06.09.2009, 16:45:57)

> PS:
> > 1. Die Funktionsdefinition vor dem Aufruf schreiben.
>
> Das ist nicht immer möglich, z.B. bei Funktionen, die sich gegenseitig
> aufrufen.
>
> > 2. Eine Funktionsdeklaration vor dem Aufruf schreiben.
>
> Das geht immer.

Hallo,

das wirft mich jetzt von der Arbeitsweise her eines Compilers etwas aus der Bahn. Warum ist die Positionsreihenfolge der Funktionen nicht egal. Das sind doch praktisch eigentlich nur Sprungmarken würde man in Basic sagen.

Aber wenn ich wie Du sagst, die Funktion ganz oben nach include usw. deklariere

void Durchschnitt (uchar chan);

dann funktioniert es tatsächlich. Besten Dank!

Also sollte man jede Funktion die man hat am Anfang deklarieren um spätere Problemen vorzubeugen?
Das ist für mich irgendwie alles doppelt gemoppelt.

Ich verstehe es jedoch immer noch nicht ganz. Der Compiler sieht doch den gesamten Programmcode bevor er es übersetzt. Warum stört ihm dann die Reihenfolge?

Ich meine, in den vielen Beispielprogrammen die ich nun schon gesehen habe werden doch auch Variablen nicht exakt am Enfang sondern erst in der Funktion deklariert. Das geht doch auch.

--
___________
Tschau
Mr. Teflon

 

gesamter Thread:

Ansicht:   
Auf unserer Web-Seite werden Cookies eingesetzt, um diverse Funktionalitäten zu gewährleisten. Hier erfährst du alles zum Datenschutz