+++ /dev/null
-#include <stdio.h>
-
-/* a function pointer to a void pointer which takes one int argument */
-typedef void (*trigger)(int);
-
-
-/* invokes a list of functions from an array */
-void invokeTriggers(trigger *list, int n) {
- int i;
- trigger *tf = list;
-
- for(i=0; i<n; i++) {
- //invoke each function
- (*tf)(i);
- tf++;
- }
-}
-
-
-void f1(int x) {
- printf("f1: %d\n", x);
-}
-
-void f2(int x) {
- printf("f2: %d\n", x);
-}
-
-
-void main() {
- trigger list[3];
-
- /* set up the list */
- list[0] = f1;
- list[1] = f2;
- list[2] = f1;
-
- invokeTriggers(list, 3);
-
- return;
-}
-
-