У меня есть серьезные сомнения в отношении 2D-массивов (язык C). Рассмотрим объявление 2D-массива следующим образом
int array[3][5];
Теперь, когда я делаю следующее, результат обоих нижеприведенных printf одинаков:
printf("%u\n", array);
printf("%u\n", *(array));
Теперь, когда я пытаюсь выполнить следующее:
printf("%u\n", array+1);
printf("%u\n", *(array)+1);
Выходы разные. Я понимаю, что второй printf относится к массиву [0] [1], а первый - к array [1] [0]. Как это работает? массив - это указатель на что?
Заранее спасибо