fork(1) download
  1. #include <stdio.h>
  2. #include <string.h>
  3. #include <stdlib.h>
  4. #define FIRST 0x01
  5.  
  6. #define REVERSE 0x02
  7.  
  8. #define LAST 0x04
  9.  
  10. #define TEST1 0x16
  11.  
  12. #define TEST2 0x32
  13.  
  14.  
  15. int main(void) {
  16. printf("FIRST: %d\n", FIRST); // 1
  17. printf("REVERSE: %d\n", REVERSE); // 2
  18. printf("FIRST|REVERSE: %d\n", FIRST | REVERSE); // 3
  19. printf("LAST: %d\n", LAST); // 4
  20. printf("FIRST | LAST: %d\n", FIRST | LAST); // 5
  21. printf("REVERSE | LAST: %d\n", REVERSE | LAST); // 6
  22. printf("REVERSE | FIRST | LAST: %d\n", REVERSE | FIRST | LAST); // 7
  23. printf("TEST1 | TEST2: %d\n", TEST1 | TEST2);
  24. if((FIRST | FIRST) == REVERSE) printf("FIRST | FIRST == REVERSE\n"); // 1 == 2?!
  25. else printf("FIRST | FIRST != REVERSE\n");
  26. printf("FIRST | FIRST: %d\n", FIRST|FIRST); // FIRST|FIRST evaluates to 1 ???
  27. return 0;
  28. }
  29.  
Success #stdin #stdout 0s 2008KB
stdin
Standard input is empty
stdout
FIRST: 1
REVERSE: 2
FIRST|REVERSE: 3
LAST: 4
FIRST | LAST: 5
REVERSE | LAST: 6
REVERSE | FIRST | LAST: 7
TEST1 | TEST2: 54
FIRST | FIRST != REVERSE
FIRST | FIRST: 1