Professional Documents
Culture Documents
Advanced Pointers
Advanced Pointers
Pointers to functions
Declaration:
returnType (*varName)(parameterTypes);
Examples:
Animal myPet;
myPet.makeSound();
3
node->next = next;
}
NODE *new_node(void *value, NODE *next) {
NODE *node = (NODE *)malloc(sizeof(NODE));
construct_node(node, value, next);
return node;
}
5
search_list
only work
#include <string.h>
Note: you may get a warning, since strcmp is not strictly of the
right type:
its parameters are of type char * rather than void *
Jump tables
double
double
double
double
add(double,
sub(double,
mul(double,
div(double,
switch(oper) {
case ADD:
result
case SUB:
result
case MUL:
result
case DIV:
result
}
10
double);
double);
double);
double);
=
=
=
=
add(op1,
sub(op1,
mul(op1,
div(op1,
op2);
op2);
op2);
op2);
break;
break;
break;
break;
Jump tables
double
12
13
register -i wallace
3
argc
14
NUL
References
16