В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
koookBook
koookBook
20.05.2022 05:20 •  Информатика

Задан следующий массив arr некоторого типа type (type занимает n байт в памяти) type arr[14][5][2][7]; требуется определить разницу в байтах между следующими адресами (если это возможно сделать однозначно): & arr[9][4][0][1] - & arr[5][1] hint: если ответ зависит от размера типа type, можно в качестве ответа указать формулу с неизвестной вида: n* (язык си)

Показать ответ
Ответ:
Heh6
Heh6
09.10.2020 10:39

N*323.

Адрес &arr[i][j][k][l] получается из адреса &arr[0][0][0][0] = &arr[0][0][0] = &arr[0][0] = &arr[0] = &arr[0] путем прибавления (5 * 2 * 7 * i + 2 * 7 * j + 7 * k + l) * N = (70i + 14j + 7k + l) * N байт

Тогда &arr[9][4][0][1] = &arr + 687N байт, &arr[5][1] = &arr + 364N байт, разность (687 - 364) N = 323N

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота