Dar2002
26.06.2022 03:21

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

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Kisson
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-бота