Public feed
#532048
#include <stdio.h>#define TYPE const char *#define is_type(type_str, type) \(strcmp(type_str, #type) == 0)#define foo(type, param) \foo_(#type, (void *) (param))void foo_(TYPE type, void *param) { if(is_type(type, int)) { printf("%i\n", (int) param); } else if(is_type(type, char *)) { printf("%s\n", (char *) param); }}int main(int argc, char **argv) { foo(int, 5); foo(char *, "omg"); return 0;}