3 * File name: test/Int.c
4 * Purpose: smallest possible Java program
5 * Author: Boris Boesler
6 * Modified by: Michael Beck
9 * Copyright: (c) 2001 Universitaet Karlsruhe
15 static int hide_int (int i) { /* to cancel out optimization */
19 int main (int argc, char *argv[]) {
20 int imax = 2147483647; /* java.lang.Integer.MAX_VALUE */
21 int imin1 = -2147483647; /* java.lang.Integer.MIN_VALUE+1 */
22 int imin = -2147483648; /* java.lang.Integer.MIN_VALUE */
27 printf(" Extreme constant integer values allowed in C:\n");
28 printf(" Integer.MAX_VALUE ( 2147483647) = %d\n", imax);
29 printf(" Integer.MIN_VALUE-1 (-2147483647) = %d\n", imin1);
30 printf(" Integer.MIN_VALUE (-2147483648) = %d\n", imin);
32 printf("\n Computations with integers:\n");
33 i = 2147483647 - hide_int(147483647); /* to cancel out optimization */
34 printf(" i = 2147483647 - 147483647 (2000000000): %d\n", i);
36 printf(" i = i / 5 (400000000): %d\n", i);
38 printf(" i = i * -2 (-800000000): %d\n", i);
40 printf(" i = i + 12344321 (-787655679): %d\n", i);
42 printf(" i = i %% 100000000 (-87655679): %d\n", i);
44 printf("\n Computations exceeding the maximal values:\n");
46 printf(" i = imax + 1 () : %d\n", i);
48 printf(" i = imax * 2 () : %d\n", i);
50 printf(" i = imin - 1 () : %d\n", i);
52 printf(" i = imin * 2 () : %d\n", i);