#include /* * Anstatt der beiden Werte a und b werden deren Speicheradressen uebergeben, * da in c ja die Speicheradresse der groesseren Variable gespeichert werden soll. * Da alle Parameter in C als "Call-By-Value" uebergeben werden, * wird hier nicht einfach der Wert von c (Der Wert von c ist irgendeine Steicheradresse) * an die Funktion max uebergeben, sonderen die Adresse von c. * */ void max_pointer(int *a, int *b, int **c) { if( *a > *b ) { *c = a; } else { *c = b; } } int main() { int a = 5; int b = 6; int *c; max_pointer(&a, &b, &c); printf("max:= %d\n", *c); return 0; }