Unterschied: Prozeduren & Funktionen?

1 Antwort

Wie du schon sagst ist eine Prozedur ein Unterprogramm welches ausgeführt wird ohne einen Rückgabewert zurückzugeben... eine Funktion hat im Gegensatz dazu ein Rückgabewert... es ist genauso wie eine Prozedur ein Unterprogramm, aber kann nicht einfach so wie ne Prozedur im Programm ohne weiteres ausgeführt werden ... sondern du musst z.B. der Variable x die Funktion zuordnen ... also:

x = function( Parameter 1, Parameter 2, usw.)

wenn z.B. paramter 1 und paramter 2 in der Funktion addiert werden, dann ist der Rückgabewert die Summe und diese wird x zugewiesen

die Prozedur kannst du einfach so ins Programm schreiben:

procedure(Parameter n.....)

das könnte dann zum Bsp. die Ausgabe der Parameter sein, das heißt das Programm gibt halt einfach nur etwas aus, aber es gibt keinen Rückgabewert...

hoffe ich konnte helfen

Schocksal :]

maximilianus7  09.12.2014, 18:11

das stimmt soweit, als es auch die klassische definition ist.

aber:

in C gibt es nur funktionen (vom begriff her). man kann aber auch funktionen definieren, die keinen rückgabe wert haben (rückgabe ist vom typ "void" = ungültig). diese funktionen werden dann wie prozeduren aufgerufen, z,B. printf("Hello World");

und aber:

auch prozedure können über ihre parameter werte zurückliefern.

alles nicht so einfach.

0
Nerui 
Fragesteller
 13.12.2014, 10:17
@maximilianus7

Hallo, vielen dank an euch beiden. Das hat mir sehr weitergeholfen. Zumindest die "Klassische Erklärung" hat mir sehr gereicht.

Ich wollte es ebenso wie Maximilianus anmerken, dass es in C++ doch auch "Prozeduren als Funktionen definieren ohne Rückgabewert" gibt! g

Danke für die Erklärung und Anmerkung. Ich werde deine Antwort als "Beste Antwort" abstempeln, sobald mir diese Option zur Verfügung steht.

Gruß

0