defaultwert bei funktion setzen
-
Hallo,
geht es eignetlich in C nicht, einem Paramter bei der Übergabe in einer Funktion einen Standardwert zu setzen?
Bsp.:
void text(bool wert1, bool wet2 = true); void text(bool wert1, bool wet2) { //Hier wird dann irgendwas gemacht }
gruß anno
-
nein geht in C nicht habs gerade mit dem gcc probiert
-
Man könnte das evtl. so lösen
void myFunction(int wert1, int wert2){ if(wert2 == 0) wert2 = 1; else wert2 = 0; }
-
ok danke, für die info.
ist dann doch nicht so toll wie c++.
-
anno schrieb:
ist dann doch nicht so toll wie c++.
*duck* Jetzt wirds gefährlich
-
lol
nur eins dazu: jede sprache hat ihre vorzüge
-
c_newbie schrieb:
Man könnte das evtl. so lösen
void myFunction(int wert1, int wert2){ if(wert2 == 0) wert2 = 1; else wert2 = 0; }
Bei dir ist jetzt wert2 immer 1 oder 0, man kann also gar keinen richtigen Wert mehr übergeben, bzw. es bringt nix...
Du wolltest wahrscheinlich sowas in der Richtung machen, dass man einen ungültigen Wert übergibt, um den Standardwert zu setzen. Dann muss man das aber beim Aufruf immer genau wissen, und bei jeder Funktion isses vielleicht wieder ein anderer 'Standardwert'. Ich würde es vielleicht eher mit einem NULL-Pointer machen, das ist relativ eindeutig.