В 32-разрядной системе, где адреса начинаются с 1000, какими будут следующие адресные значения?Выполнение c-программы на 32-разрядной машине
int main()
{
int a[10];
a;
a++;
&a+1;
}
Я попытался напечатать то же самое в операторах печати, но это дает мне ошибку.
'A ++;' не может. 'a' является константой, что означает массив. – BLUEPIXY
* Какой * адрес начинается с '1000'? Из массива? Вы знаете, что массивы фиксированы на месте, вы не можете изменить размещение массива, что означает, что любое выражение, пытающееся изменить размещение массивов (например, 'a ++'), является недопустимым. –
Также я рекомендую вам прочитать [это мое сообщение в блоге] (https://ghost.pileborg.se/2016/08/28/the-difference-between-arrays-decaying-to-pointers-and-pointers-to- массивы /), он пытается объяснить массивы и указатели и все такое. Самое главное это «показывает» разницу между «a + 1» и «& a + 1». –