RicardasSim

function pointer

Apr 3rd, 2019
651
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.59 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <stdint.h>
  4.  
  5. int32_t(*fncPtr)(int32_t, int32_t);
  6.  
  7. int32_t fncA(int32_t x, int32_t y)
  8. {
  9.     return x + y;
  10. }
  11.  
  12. int32_t fncB(int32_t x, int32_t y)
  13. {
  14.     return x - y;
  15. }
  16.  
  17.  
  18. int main (int argc, char **argv){
  19.  
  20.     int32_t a = 2;
  21.     int32_t b = 1;
  22.     int32_t r;
  23.    
  24.     //int32_t(*fncPtr)(int32_t, int32_t) = &fncA;
  25.  
  26.     fncPtr = &fncA;
  27.    
  28.     r=(*fncPtr)(a,b);
  29.    
  30.     printf("%d\n",r);
  31.    
  32.     fncPtr = &fncB;
  33.    
  34.     r=(*fncPtr)(a,b);
  35.    
  36.     printf("%d\n",r);
  37.    
  38. return 0;
  39. }
  40.  
  41. /*
  42. output:
  43.  
  44. 3
  45. 1
  46.  
  47. */
Advertisement
Add Comment
Please, Sign In to add comment