Wann muss bei Funktionen in C in der Klammer etwas stehen?

Beispiele: float eingabeZahl() { ----> steht nichts in der () hinter dem Ausdruck Zahl
float eingabe;
printf("\nEingabe Zahl: ");
scanf("%f", &eingabe);
return eingabe;

void ausgabeErgebnis(float ergebnis) {
printf("\nErgebnis: %f\n", ergebnis); oder

float multipliziere(float zahl1, float zahl2) {
return (zahl1 * zahl2);
}


Ich check das noch nicht. Könnt ihr mir weiterhelfen?

Niemand2012-06-26T09:59:48Z

Beste Antwort

Wenn eine Funktion mit Parameterübergabe aufgerufen wird, so werden diese in den Klammern definiert.

Bei Deinem Beispielen ist es so dass die Funktion eingabeZahl() ohne Parameter aufgerufen wird. Der Funktion ausgabeErgebnis(Float ergebnis) wird eine Fließkommazahl übergeben und der Funktion multipliziere(float zahl1, float zahl2) zwei Fließkommazahlen.

Hier ein kleines Beispiel was genau dabei passiert:
http://abraham.fh-lausitz.de/profs/robel/faq/callByValue.html

MeMeMe2012-06-26T16:54:12Z

Es muss immer dann etwas in der Klammer stehen, wenn du ein Argument übergeben möchtest. Hast du z.B. eine Funktion, die dir den Flächeninhalt eines Kreises ausrechnet, macht es Sinn, wenn du dieser Funktion einen Parameter Radius gibst. Diesen Parameter musst du bei der Definition der Funktion (z.B. float GetCircleArea(float Radius)) in den Klammern mit Datentyp und Namen angeben. Beim Aufruf gibst du dann in der Klammer das Argument für den Radius an, z.B. GetCircleArea(5.f) um den Flächeninhalt für einen Kreis mit dem Radius 5 auszurechnen.