#include <stdio.h>
#define type(x) _Generic((x),                                                     \
          int: "int",                     unsigned int: "unsigned int",           \
        float: "float",                         double: "double",                 \
  long double: "long double",                   char *: "char *",                 \
       void *: "void *",                         int *: "int *",                  \
      default: "unknown")
var;
int main() {
	printf("%s\n", type(var));
	return 0;
}