Форум программистов, компьютерный форум CyberForum.ru

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

Войти
Регистрация
Восстановить пароль
 
ntny
7 / 7 / 0
Регистрация: 17.06.2012
Сообщений: 168
#1

Разыменовывание массива указателей - C++

25.11.2012, 14:00. Просмотров 515. Ответов 1
Метки нет (Все метки)

Здравствуйте.
Если просто создать статический массив char a[] = {'s', ' t','r','i','n','g'};
Объявить на него указатель char* v = a;
и сделать разыменовывание cout << *(v+3); то получу символ хранящийся в массиве.

Однако в данном случае char* arra = new char['s','o','m','m','e','s','t', 'h', 'd', 'h', 'h', 'g','s','r','i','n','g','h'];
разыменовывние cout << *(arra+3); не работает.
Выводятся знаки равно(=) вместо символов.
Каким образом можно разыменовывать указатель в данном случае?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.11.2012, 14:00     Разыменовывание массива указателей
Посмотрите здесь:

C++ Программирование массива указателей
Объявление динамического массива указателей C++
Создание массива указателей на векторы C++
Удаление массива указателей C++
C++ Разыменовывание воид указателей, хранящихся в массиве
C++ Сортировка массива указателей на char
C++ Переопределение размера массива указателей
C++ Связь массива и указателей
C++ Проверка на nullptr + разыменовывание
Рисунок в C++ с использованием массива и указателей C++
Обработка массива с использованием указателей C++
Сортировка динамического массива указателей C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ps10n1ck
54 / 48 / 2
Регистрация: 10.11.2010
Сообщений: 132
25.11.2012, 14:08     Разыменовывание массива указателей #2
ты неправильно динамический массив выделяешь

Добавлено через 1 минуту
char* arra = new char['s','o','m','m','e','s','t', 'h', 'd', 'h', 'h', 'g','s','r','i','n','g','h'];
вместо этого нужно,
char* arra = new char[кол элементов для хранения чаров]
а потом просто
cout << arra[индекс элемента]

Добавлено через 1 минуту
для инициализации можно сделать так:
for(uint i = 0; i < кол элементов; ++i)
cin >> arra[i]
Yandex
Объявления
25.11.2012, 14:08     Разыменовывание массива указателей
Ответ Создать тему
Опции темы

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