The complete program has three files:
callback.c
, reg_callback.h
and reg_callback.c
=================================
/* reg_callback.h */
typedef
void
(*callback)(
void
);
void
register_callback(callback ptr_reg_callback);
===========================
/* reg_callback.c */
#include"reg_callback.h"
/* registration goes here */
void
register_callback(callback pCallback)
{
printf
(
"inside register_callback\n"
);
/* calling our callback function my_callback */
(*pCallback)();
}
=============================
/* callback.c */
#include"reg_callback.h"
/* callback function definition goes here */
void
my_callback(
void
)
{
printf
(
"inside my_callback\n"
);
}
int
main(
void
)
{
/* initialize function pointer
*/
callback pCallback=my_callback;
printf
(
"This is a program demonstrating function callback\n"
);
/* register our callback function */
register_callback(pCallback);
printf
(
"back inside main program\n"
);
return
0;
}
=============================
No comments:
Post a Comment