Cheatography
https://cheatography.com
Übersicht über die Syntax von Funktionen in C
Allgemeine BegriffeBegriff | Beschreibung | Funktionsdeklaration | Bekanntmachung des Namens der Funktion. Rückgabetyp Funktionsname(Datantyp [Parametername], ...); | Funktionsdefinition | Belegung eines Speicherbereichs Rückgabetyp Funktionsname (Datentyp Parametername, ...) { Anweisungen; }
| Rückgabewert | Funktionsergebnis Wird innerhalb der Funktion mit return Wert; angegeben. Die Funktion wird damit beendet. | Funktionsparameter | Daten (Variablen), die zur Verarbeitung an die Funktion übergeben werden können. Eine Funktion kann beliebig viele Parameter haben. | Übergabe per Wert | Wert wird in den Stack kopiert. Wird er verändert, bleibt das Original unberührt. | Übergabe per Zeiger | Der Zeiger wird im Stack abgelegt. Über diesen Zeiger wird auf das eigentliche Objekt zugegriffen und damit auch verändert. | Rekursiver Funktionsaufruf | Der Aufruf einer Funktion durch sich selbst. | Zeiger auf Funktionen | double (*Fkt) (double); Zeiger auf Funktion, die ein double als Parameter erhält und ein double zurückgibt.
| Beispiel | #include <math.h> double (*TrigFkt) (double); //Zeiger auf Funktion, die double als Parameter erhält und double zurückgibt TrigFkt = sin;
|
BeispieleParameter | int i = 5; void funktion (int i) { printf("%i", i); }
//Ausgabe: 5
| Rückgabewert | int i; int funktion(int);
int main(){ i = funktion(5); printf("%i", i); }
int funktion (int i) { return i += 5; }
//Ausgabe: 10
| Rekursiver Funktionsaufruf | int funktion(int);
void main(){ i = funktion(5); printf("%i", i); }
int funktion (int i) { int p = i; p += 5; if (p < 15) p = funktion(p); return p; }
//Ausgabe: 15
|
Die Funktion main()einfache Form | `int main() return 0; //Exit Code } | komplexere Form | int main (int argc, char* argv[]) { return 0; //Exit Code }
| Beispielaufruf komplexere Form | ./prog 1 Test argv[0] = "./prog" argv[1] = "1" argv[2] = "Test"
|
|
Help Us Go Positive!
We offset our carbon usage with Ecologi. Click the link below to help us!
Created By
Metadata
Comments
No comments yet. Add yours below!
Add a Comment
Related Cheat Sheets
More Cheat Sheets by TimSch