Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Deamod1s
0 / 0 / 0
Регистрация: 28.10.2016
Сообщений: 9
#1

Почему мы не разыменовываем указатель на элемент массива? - C++

04.11.2016, 15:53. Просмотров 151. Ответов 2
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
    int *ptrarray = new int [10];
    for (int i = 0; i < 10; i++)
    {
        ptrarray[i] = i;
        cout << ptrarray[i] << " ";
    }
    delete[] ptrarray;
Почему не правильна инструкция
C++
1
*ptrarray[i] = i;
Ведь чтобы "кинуть" какое-то значение в ячейку динам.памяти,которая находится по адресу,на который ссылается указатель,нужно его сначала разыменовать.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.11.2016, 15:53
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Почему мы не разыменовываем указатель на элемент массива? (C++):

Указатель на элемент массива - C++
Добрый день! Возникла проблемка... грубо говоря есть два массива x и y, как к примеру указателю x присвоить указатель y? через &amp;x не дается...

Создать указатель на элемент массива - C++
Как создать указатель на элемент a Например у меня элемент a выглядит так: *(*(a + i) + j)

Заставить указатель указывать на нулевой элемент массива - C++
Вроде бы и простой вопрос для начинающих, но почему-то не могу найти на него ответ. Есть функция сортировки массива, алгоритм типа...

Может ли указатель показывать на последний элемент массива, а не на первый? - C++
Люди!!!! подскажите! может ли указатель показывать на последний элемент массива, а не на первый???(С++) и как это сделать, если...

Как передвигать указатель на следующий элемент массива структур? - C++
Вопрос относительно использования символа стрелка '-&gt;'. Допустим, есть такой код: #include&lt;iostream&gt; using namespace std; struct...

Почему указатель на указатель объявляется как float **A; - C++
Почему float?

2
Croessmah
Пришел
Эксперт CЭксперт С++
13771 / 7852 / 894
Регистрация: 27.09.2012
Сообщений: 19,267
Записей в блоге: 3
Завершенные тесты: 1
04.11.2016, 16:00 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от Deamod1s Посмотреть сообщение
нужно его сначала разыменовать.
выражение ptr[i] преобразовывается в *(ptr+i).
0
DevAlone
321 / 273 / 55
Регистрация: 02.08.2016
Сообщений: 1,008
Завершенные тесты: 4
04.11.2016, 16:02 #3
потому что [] его уже разыменовывают, это всё равно что написать *(ptrarray+i)

Добавлено через 59 секунд
а если вы напишете *ptrarray[i] = i; будет **(ptrarray+i) и компилятор укажет на ошибку
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.11.2016, 16:02
Привет! Вот еще темы с ответами:

Функция должна возвращать указатель на первый элемент массива,удовлетворяющий условию - C++
Функция должна возвращать указатель на первый элемент массива,удовлетворяющий условию(в данном случае используется указатель на бинарный...

Вывести минимальный элемент введенного с клавиатуры массива целых чисел (через указатель) - C++
Как написать программу, которая выводит минимальный элемент введенного с клавиатуры массива целых чисел? Для доступа к элементам массива...

Приведение любого двумерного массива к типу указатель на указатель - C++
Допустим, есть несколько массивов int arr1; int arr2; int arr3; Какое преобразование нужно сделать, чтобы подобные присвоения...

Первый элемент массива равен 1 а остальные почему-то нулю - C++
Здраствуйте есть вопрос к задаче: дана программу реализовывающую вычисление последовательности Фиббоначи до определённого номера...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru