fork(1) download
  1. #include <stdio.h>
  2.  
  3. #define PRINTER(Type_) , Type_: #Type_
  4. #define print_type(val) puts(_Generic((val) \
  5. PRINTER(char) \
  6. PRINTER(unsigned char) \
  7. PRINTER(short) \
  8. PRINTER(unsigned short) \
  9. PRINTER(int) \
  10. PRINTER(unsigned int)))
  11.  
  12. int main() {
  13. print_type('a');
  14. print_type('a' * 'b');
  15.  
  16. char a = 'a';
  17. char b = 'b';
  18. print_type(a);
  19. print_type(a * b);
  20.  
  21. return 0;
  22. }
Success #stdin #stdout 0s 2168KB
stdin
Standard input is empty
stdout
int
int
char
int