-
What happens if you try to compile and run this program?
#include <stdio.h>
#define ALPHA(x, y) x+y
int main(void){
int i = -1;
int i2 = -2;
printf("%d", -ALPHA(i i2));
return 0;
}
- the program outputs
-1
- the program outputs
-2
- the program outputs
-3
- the program outputs
0
-
What happens if you try to compile and run this program?
#include <stdio.h>
#define A(x) ((x)?-1:0)
#define B(a) !(a)
int main(void) {
int i = 2;
int i2 = A(B(i));
printf("%d", i2);
return 0;
}
- the program outputs
-1
- the program outputs
-3
- the program outputs
-2
- the program outputs
0
-
What happens if you try to compile and run this program?
#include <stdio.h>
int main(void) {
int X = 1;
#define X 1
int Y = X - 2;
#undef X
printf("%d", Y+X);
return 0;
}
- the program outputs
-1
- the program outputs
-3
- the program outputs
0
- the program outputs
-2
-
What happens if you try to compile and run this program?
#include <stdio.h>
#define X 1
#define y 2
int main(void) {
int i =
#if X << Y > 0
-X
#else
-Y
#endif
;
printf("%d", i);
return 0;
}
- the program outputs
-3
- the program outputs
0
- the program outputs
-2
- the program outputs
-1
-
What happens if you try to compile and run this program?
#include <stdio.h>
#define X 1
#define y 2
int main(void) {
int i =
#if X >> Y > 0
-X
#else
-Y
#endif
;
printf("%d", i);
return 0;
}
- the program outputs
-2
- the program outputs
-1
- the program outputs
0
- the program outputs
-3
-
What happens if you try to compile and run this program?
#include <stdio.h>
#define ALPHA -2
int main(void) {
int i = -1;
i += ALPHA;
printf("%d", i);
return 0;
}
- the program outputs
-3
- the program outputs
-1
- the program outputs
-2
- the program outputs
0
-
What happens if you try to compile and run this program?
#include <stdio.h>
int main(void) {
#undef X
int X = 1;
int Y = X - 2;
#define X -2
printf("%d",Y+X);
return 0;
}
- the program outputs
-1
- the program outputs
-2
- the program outputs
0
- the program outputs
-3
-
What happens if you try to compile and run this program?
#include <stdio.h>
#define ALPHA -1+2
int main(void) {
int i = -1;
i += ALPHA;
printf("%d", i);
return 0;
}
- the program outputs
-3
- the program outputs
0
- the program outputs
-1
- the program outputs
-2
-
What happens if you try to compile and run this program?
#include <stdio.h>
#define X 1
#define y 2
int main(void) {
int i = -1;
i = -1 * ALPHA;
printf("%d", i);
return 0;
}
- the program outputs
0
- the program outputs
-3
- the program outputs
-1
- the program outputs
-2
-
What happens if you try to compile and run this program?
#include <stdio.h>
#define ALPHA(x) 2*-x
int main(void) {
int i = ALPHA((1-1));
printf("%d", i);
return 0;
}
- the program outputs
0
- the program outputs
-1
- the program outputs
-3
- the program outputs
-2
-
What happens if you try to compile and run this program?
#include <stdio.h>
#define A
#define C
int main(void) {
int i =
#ifdef A
#ifdef B
-1
#else
-2
#endif
#else
-3
#endif
;
printf("%d", i);
return 0;
}
- the program outputs
-1
- the program outputs
-2
- the program outputs
-3
- the program outputs
0
-
What happens if you try to compile and run this program?
#include <stdio.h>
#define B
#define C
int main(void) {
int i =
#ifdef A
#ifdef C
-1
#else
-2
#endif
#else
-3
#endif
;
printf("%d", i);
return 0;
}
- the program outputs
-3
- the program outputs
-1
- the program outputs
-2
- the program outputs
0
-
What happens if you try to compile and run this program?
#include <stdio.h>
#define ALPHA(x, y) x##2-y
int main(void) {
int i = -1;
int i2 = -2;
printf("%d", ALPHA(i, i2));
return 0;
}
- the program outputs
-1
- the program outputs
-2
- the program outputs
0
- the program outputs
-3
-
What happens if you try to compile and run this program?
#include <stdio.h>
#define ALPHA -1-2
int main(void) {
int i = -1;
i = i * ALPHA;
printf("%d", i);
return 0;
}
- the program outputs
-3
- the program outputs
0
- the program outputs
-2
- the program outputs
-1
-
What happens if you try to compile and run this program?
#include <stdio.h>
#define ALPHA(x) -x
int main(void) {
int i = ALPHA(2-1);
printf("%d", i);
return 0;
}
- the program outputs
0
- the program outputs
-1
- the program outputs
-3
- the program outputs
-1
-
What happens if you try to compile and run this program?
#include <stdio.h>
#define A
#define C
int main(void) {
int i =
#ifdef A
#ifdef C
-1
#endif
#else
-3
#endif
;
printf("%d", i);
return 0;
}
- the program outputs
-1
- the program outputs
-3
- the program outputs
0
- the program outputs
-2
-
What happens if you try to compile and run this program?
#include <stdio.h>
#define ALPHA(x) 2*-x
int main(void) {
int i = ALPHA(1-);
printf("%d", i);
return 0;
}
- the program outputs
-2
- the program outputs
0
- the program outputs
-3
- the program outputs
-1
-
What happens if you try to compile and run this program?
#include <stdio.h>
#define ALPHA -1
#define BETA - ALPHA
int main(void) {
int i = ALPHA + BETA * ALPHA * BETA;
printf("%d", i);
return 0;
}
- the program outputs
-3
- the program outputs
-2
- the program outputs
0
- the program outputs
-1
-
What happens if you try to compile and run this program?
#include <stdio.h>
#define A(x) ((x)?-1:0)
int main(void) {
int i = 2;
int i2 = A(i) * i;
printf("%d", i2);
return 0;
}
- the program outputs
-2
- the program outputs
-3
- the program outputs
-1
- the program outputs
0
-
What happens if you try to compile and run this program?
#include <stdio.h>
#define A(x) #x
int main(void) {
int i = -1;
char *s = A(i);
i = -(s[0] == 'i';
printf("%d", i);
return 0;
}
- the program outputs
0
- the program outputs
-3
- the program outputs
-1
- the program outputs
-2