2016-04-01 6 views
-1

verstehen, also habe ich Zeiger studiert und versucht, sie zu verstehen.Zeiger in den Funktionen

Ich weiß, dass in der folgenden Zeile

int f(int ni, int n); 

f eine Funktion, die zwei int-Variablen als Eingabe akzeptiert und es gibt einen int als Ergebnis

Wenn ich die folgende Zeile

schreiben
int (*f)(int ni, int n); 

dann ist f ein Funktionszeiger

jedoch Was passiert, wenn ich etwas schreibe?

int (*f[4])(int p); 

Danke für Ihre Hilfe.

+1

Verwenden Sie ['cdecl'] (http://cdecl.ridiculousfish.com/?q=int+%28*f%5B4%5D%29%28int%29) für Pub-Quizfragen wie diese. –

Antwort

3

Dies ist ein Array von 4 Zeiger funktionieren, Beispiel:

int foo(int p) { 
    return 0; 
} 

int (*f[4])(int p); 
f[0] = foo; 
f[1] = foo; 
f[2] = foo; 
f[3] = foo;