C11新特性_Generic用法
#include <stdio.h>
#define print_var(x) \
printf(_Generic(x, int \
: #x " = %d\n", float \
: #x " = %f\n"), \
x);
int main(int argc, char const *argv[])
{
float val = 123;
printf("hello: %s\n", _Generic(val, int
: "int", float
: "float"));
int a = 333;
print_var(a);
float b = 3.124;
print_var(b);
return 0;
}

浙公网安备 33010602011771号