1. Отрицательный индекс массива

☰ Теория

Указатель — переменная, хранящая адрес памяти другой переменной.

Объявление указателей

type* pointer_name;  // тип указателя должен соответствовать типу переменной
Примеры
int* pInt;      // указатель на int
char* pChar;    // указатель на char
double* pDouble;// указатель на double

Работа с указателями

int value = 25;
int* p = &value;    // & - оператор взятия адреса

cout << p;      // выведет адрес памяти
cout << *p;     // * - оператор разыменования, выведет 25

Указатели и массивы

int arr[] = {5, 10};
int* p = arr;       // эквивалентно p = &arr[0]

cout << *p;         // 5 (первый элемент)
p++;                // переход к следующему элементу
cout << *p;         // 10 (второй элемент)

Ключевые моменты:

  • & - получение адреса переменной

  • * - разыменование (доступ к значению по адресу)

  • Указатель на массив указывает на его первый элемент

  • Арифметика указателей позволяет перемещаться по элементам массива

Дана строка "12345abcd". Создать указатель таким образом, чтобы нулевой индекс указывал на последний символ.
 
Примеры
Входные данные Выходные данные
1 0 d
2 -8 1

Вставьте недостающие фрагменты кода
C++
1
#include <iostream>            
2
using namespace std;            
3
main()            
4
{            
5
  int i;            
6
  char s[] = "12345abcd";            
7
  cin >> i;            
8
9
  cout << pC[i];            
10
}