// Print an array of characters. #include #define ARRAY_LEN 5 int main(void) { char array[ARRAY_LEN] = {'h', 'e', 'l', 'l', 'o'}; for (int i = 0; i < ARRAY_LEN; i++) { printf("array[%d] = %c = %c = %c, ", i, array[i], i[array], *(array + i)); printf("&array[%d] = %p = %p\n", i, &array[i], array + i); // &array[i] = array + 1 * i - for an array of characters // &array[i] = array + sizeof(element) * i - in general // Because addition is commutative, the following are equivalent: // array[i] = *(array + i); // i[array] = *(i + array) } return 0; } // What if we had // int array[ARRAY_LEN] = {3, 1, 4, 1, 5}; ? // &array[i] = array + 4 * i for an array of integers