§ 7.1 Указатели
Эти два понятия — массивы и указатели — неразрывно связаны между собой.
Указатель — это переменная для хранения адреса другой переменной. Его объявление содержит тип и знак *. Чтобы узнать адрес переменной, нужно указать знак амперсанд и её имя: &foo. Чтобы работать со значением, записанным по адресу в указателе, воспользуемся операцией, которая называется разыменование указателя: *ptr.
int foo = 1;
int *ptr = &foo; // Адрес переменной сохраняем в указатель.
printf("%d %d", foo, *ptr); // Прямое и косвенное обращение.
Как будет выглядеть ввод чисел при прямом и косвенном обращении?
scanf("%d", &foo);
scanf("%d", ptr); // ptr уже адрес, знак & не нужен.