Массив и указатель на него

160
09 декабря 2018, 01:10

По мере изучения массивов возникло 2 вопроса:

1.

#include <iostream>
using std::cout;
using std::cin;
int main (void)
{
    setlocale(LC_ALL, "ru");
    int a[5];
    cout << a << "\n" << &a << "\n";
    system("pause");
}

Почему выводится один и тот же адрес? Как читал, а - указатель на первый элемент массива. Мы выводим адрес этого первого элемента, а затем адрес указателя на него, но адрес один и тот же. Можете прояснить ситуацию?

2. Запись

int a[5]

и

int (*a)[5]

Что означает второй пример, как с ним работать (с помощью new) и в чём его отличие от первого.

READ ALSO
boost и векторы

boost и векторы

Возникла необходимость в использовании векторов (имеется ввиду векторы из геометрии) с сответственными операциями, вроде вычитания, сложения,...

287
Ошибка &ldquo; Main method not found&rdquo;

Ошибка “ Main method not found”

Компилятор выдает ошибку:

262
Пул обёрток над примитивами

Пул обёрток над примитивами

Значения входящие в диапазон [-128; 127], у оберток на примитивами хранятся не напрямую в хипе, а в неком пуле для более быстрого доступа к нимКак...

192
Парсинг JSON без имени массива Android

Парсинг JSON без имени массива Android

С сайта парсится такой JSON:

228