Advertisement
Guest User

Untitled

a guest
Jun 7th, 2015
266
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.46 KB | None | 0 0
  1. #define OP(a,b,op) ((a)op(b))
  2.  
  3. #define MKFUNC_a_op_b(type, opname, op) void type##_##opname##_##type(const void *a, const void *b, void *out) \
  4. {\
  5.   type tmp =  OP(*(type*)a,*(type*)b,op);\
  6.   memcpy(out,(void*)(&tmp),sizeof(type));\
  7. }\
  8.  
  9. MKFUNC_a_op_b(char,plus,+)
  10. MKFUNC_a_op_b(char,minus,-)
  11. MKFUNC_a_op_b(char,div,/)
  12. MKFUNC_a_op_b(char,mod,%)
  13.  
  14. MKFUNC_a_op_b(float,plus,+)
  15. MKFUNC_a_op_b(float,minus,-)
  16. MKFUNC_a_op_b(float,div,/)
  17. MKFUNC_a_op_b(float,mod,%)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement