Callbacks são ponteiros de funções que necessita ser associado a um endereço de memoria de uma outra função para ser chamado
quase equivalente a um método abstrato de uma classe
Casos De Uso:
- Uma estrutura de chamada de comandos
- Sistema de plugins onde as chamadas do plugin são alocados em um callback
#include <stdio.h>
typedef int (*calc)(int a, int b);
int soma(int a, int b){
return (a+b);
}
int mul(int a, int b){
return (a*b);
}
int sub (int a, int b){
return (a-b);
}
int main(int argc, char * argv[]){
calc c;
c = &soma;
printf("SOMA: %d+%d=%d\n",2,2, c(2,2));
c = ⊂
printf("SUBTRACAO: %d-%d=%d\n",2,2, c(2,2));
c = &mul;
printf("MULTIPLICACAO: %d*%d=%d\n",2,2, c(2,2));
return 0;
}