int lala(int x) { printf("lala %d", x); return 0; } #define ptr(from,to) \ _asm { \ lea eax, from; \ mov to, eax; \ } int main(int argc, char* argv[]) { int (*x)(int); ptr(lala,x); x(5); }