#include <string.h>
#include <stdio.h>
void (*p)(char *);
void function(char *param) {
printf("param %s\n", param);
}
void main() {
char buff[100] = "learn pointer function";
p = &function;
p(buff);
}
result : param learn pointer function
Coba perhatikan p = &function, bisa diperhatikan kalau p sebagai pointer yang kemudian menunjuk ke fungsi function, jadi seolah - olah p itu ada fungsi dari function. Itu seperti terlihat miror.
Keuntungan menggunakan cara ini adalah,
- Bisa digunakan untuk passing fungsi sebagai parameter pada fungsi
- Lebih flexibel, karena fungsi itu berupa variabel
Sekian dari saya, jika kurang jelas bisa lihat di sini
Terima kasih
0 komentar:
Posting Komentar