/* integer-experiments.c From CS208 class, Friday, 29 Sep 2023 */ #include int main() { // What bits are stored in positive and negative int variables? printf("==== Experiment 1: bits in ints ====\n"); int x = 3; int y = -3; int z = x + y; printf("x = %d, y = %d, z = %d\n", x, y, z); printf("x = 0x%x, y = 0x%x, z = 0x%x\n", x, y, z); printf("\n==== Experiment 2: counting to infinity? ====\n"); int k = 1; while (k > 0) { k = k + 1; } printf("We made it! k = %d = 0x%x\n", k, k); printf("\n==== Experiment 3: printing unsigned ints ====\n"); printf("Note: there's something odd about this example; to be continued...\n"); y = -1; printf("y = %d = 0x%x\n", y, y); unsigned int w = y; printf("w = %u = 0x%x\n", w, w); printf("\n==== Experiment 4: assigning a char to an int ====\n"); char ch = 0xC3; int m = ch; printf("m = %d = 0x%x\n", m, m); printf("\n==== Experiment 5: 0x80000000 is weird ====\n"); int q = 0x80000000; printf("q = %d; -q = %d\n", q, -q); return 0; }