Twitter und Facebook-Anbindung
X
Tweet Follow @twitterapi
!!! Anbindung an twitter und facebook öffnen !!!

Wenn Ihnen mein Online-Buch gefällt,
dann bedanken Sie sich doch mit einer kleinen Spende...

5.5 Standardparameter von Funktionen

5.5 Standardparameter von Funktionen

In gewissen Situationen kommt es vor, dass man eine Funktion bauen soll, welche eine bestimmte Aufgabe erledigen soll, die von verschiedenen Parametern abhängen, die der Programmierer aber, für den Normalfall, nicht immer angeben möchte. Dafür wurden s.g. Defaultparameter erfunden. Man braucht sie beim Funktionsaufruf nur anzugeben, wenn es quasi ein Spezialfall ist.

Hier mal ein Beispiel:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
					
// Gibt das Schema einer linearen Funktion an /////////////////////////////////
void PrintLinearFunction(float fAnstieg = 1.0f, float fVerschiebung = 0.0f) {
	// Wenn der Standardanstieg übergeben wurde
	if (fAnstieg == 1.0f) {
		// Wenn die Standardverschiebung übergeben wurde
		if (fVerschiebung == 0.0f) {
			printf("y = x");
		} else {
			printf("y = x + %g", fVerschiebung);
		} // end of if
	} else {
		// Wenn die Standardverschiebung übergeben wurde
		if (fVerschiebung == 0.0f) {
			printf("y = %gx");
		} else {
			printf("y = %gx + %g", fAnstieg, fVerschiebung);
		} // end of if
	} // end of if
} // PrintLinearFunction //////////////////////////////////////////////////////



// Hauptfunktion des Programms ////////////////////////////////////////////////
int main(int argc, char** argv) {
	// Normalerweise würde man hier den Anwender fragen, ob er den Anstieg und die Verschiebung
	// angeben möchte und in einer verschachtelten if Anweisung die Werte einlesen und entsprechend
	// Die Ausgabefunktion aufrufen, aber darum geht es hier nicht.

	PrintLinearFunction();	// Nutzt beide Defaultwerte
	PrintLinearFunction(5.0f);	// Nutzt nur den zweiten Defaultwert

	PrintLinearFunction(8.0f, 3.0f);
	PrintLinearFunction(1.0f, 7.0f);
	
	return 0;
} // main /////////////////////////////////////////////////////////////////////
					

Ausgabe:

y = x
y = 5x
y = 8x + 3
y = x + 7
		

Die Angaben der Standardwerte müssen mit in der Header-Datei angegeben werden.

Wenn Sie "Zwangsvariablen" und Defaultparameter definieren, müssen Sie darauf aufpassen, dass die Defaultparameter zu Letzt stehen, weil sonst der Compiler dies zurück weißt.

Zum Seitenanfang
Zum Inhaltsverzeichnis

© Copyright by Thomas Weiß, 2009 - 2012