В соответствии с концептуальным пониманием указатель указывает на ячейку памяти после увеличения массива на 12 байт в компиляторе gcc.
#include<stdio.h> int main() { int a[3]={1,2,3}; int *p; p=&a+2; *p=50; printf("p = %d\n",p); printf("*p = %u\n",*p); printf("z = %u\n",&a+1); printf("y = %u\n",*(&a+1)); }
Что я уже пробовал:
Я получаю выходные данные в определенной области памяти только с помощью двойного указателя. Почему я не могу получить значение с помощью одного указателя. Я получаю значение на *p, но не могу получить то же самое значение, используя *(&a+1).пожалуйста, помогите.