Прочитав некоторые сообщения на этом сайте, я понял, что массив в C — это не просто постоянный указатель, как я изначально думал, а сам по себе отдельный тип, но в большинстве случаев массив распадается на постоянный указатель на первый элемент массива. . Из-за этой новой информации у меня возник вопрос. Предположим, у нас есть двумерный A[10][10]. Почему результатом выражения *A является указатель на первый элемент массива? Я думал, что в этом выражении A распадается на постоянный указатель на первый элемент массива A[0][0], и тогда применение косвенности должно дает нам значение A[0][0], но на самом деле он по-прежнему дает нам адрес первого элемента массива. Конечно, что-то не так с моей логикой или моим пониманием массивов или указателей, так где же я ошибаюсь?
Заранее спасибо.