История изменений
Исправление Ivan_qrt, (текущая версия) :
Я это всё прекрасно понимаю. Я не понимаю почему операция разыменования не производится в случае, если тип указателя int64_t (*)[x]. Но производится, если это int64_t *.
printf("%p\n", p6[3]);
printf("%p\n", (*(p6 + 3)));
printf("%p\n", (p6 + 3));
Возвращают одинаковые адреса.
В компиляторе для оператора разыменования специальный костыль (полиморфизм по возвращаемому значению?)? Или я всё-таки чего-то не понимаю?
baldman88,
GPFault вопрос не в том, как это работает, а в том, почему это работает.
Исходная версия Ivan_qrt, :
Я это всё прекрасно понимаю. Я не понимаю почему операция разыменования не производится в случае, если тип указателя int64_t (*)[x]. Но производится, если это int64_t *.
printf("%p\n", p6[3]);
printf("%p\n", (*(p6 + 3)));
printf("%p\n", (p6 + 3));
Возвращают одинаковые адреса.
В компиляторе для оператора разыменования специальный костыль (полиморфизм по возвращаемому значению?)? Или я всё-таки чего-то не понимаю?