#include #define ARRAY_LEN 5 int main(void) { char array[ARRAY_LEN] = {'h', 'e', 'l', 'l', 'o'}; printf("array %p\n", array); 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 = %p\n", i, &array[i], &i[array], array + i); } int array2[ARRAY_LEN] = {9, 6, 3, 7, 1}; printf("\narray2 %p\n", array2); // Note the pointer arithmetic! for (int i = 0; i < ARRAY_LEN; i++) { printf("array2[%d] = %d = %d = %d, ", i, array2[i], i[array2], *(array2 + i)); printf("&array2[%d] = %p = %p = %p\n", i, &array2[i], &i[array2], array2 + i); } return 0; }