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

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

Войти
Регистрация
Восстановить пароль
 
Snickers077
7 / 7 / 2
Регистрация: 12.01.2014
Сообщений: 38
#1

Доступ к элементам динамического массива из структур - C++

20.02.2014, 11:26. Просмотров 565. Ответов 3
Метки нет (Все метки)

Всем доброго времени суток! Проблема вот какая. Есть вот такой вот код.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include "stdafx.h"
#include <iostream>
#include<string>
struct CandyBar {
 
    std::string name;
    double ves;
    int kalorii;
 
};
 
int _tmain(int argc, _TCHAR* argv[])
{
    using namespace std;
    CandyBar * cb = new CandyBar [3];
    
 
    cout << "Enter a name of candy1: ";
cin >> cb->[1]name;
Как получить доступ к элементам такого массива? Чтобы например ввести строку в поле name второго элемента массива?
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.02.2014, 11:26
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Доступ к элементам динамического массива из структур (C++):

Вложенные структуры. Доступ к элементам структур - C++
Как через структуру реализовать что-то вроде этого. Есть структура с городами, каждый город имеет одинаковый набор свойств, но у каждого...

Обращение к элементам двухмерного динамического массива - C++
Строки в двумерном динамическом массиве расположены не вплотную друг к другу. Тогда почему чтобы получить значение из массива оператор ar...

Косвенное обращение к элементам динамического массива - C++
Доброго времени суток. Необходима помощь с программой. Текст задачи: Заданы два массива А(5) и В(4). Первым на печать вывести массив,...

Обращение к элементам динамического массива через указатели - C++
Само задание написано внизу в коментарии! Заранее спасибо! #include &lt;conio.h&gt; #include &lt;stdio.h&gt; #include &lt;iostream&gt; using...

Присвоение значений элементам двумерного динамического массива - C++
Я недавно начал программировать на языке С++, поэтому, естественно, многого не понимаю :( Вот создал я (пытался) двумерный динамический...

Обращение к элементам массива структур - C++
Вводим n-ое количество имен и количество оценок каждому из имен.(студент - оценки) #include &lt;iostream&gt; using namespace std; ...

3
dzrkot
zzzZZZ...
523 / 353 / 54
Регистрация: 11.09.2013
Сообщений: 2,036
20.02.2014, 11:40 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от Snickers077 Посмотреть сообщение
cb->[1]name;
cb[1].name;

ну и кстати начинать надо с 0 если вдруг вы не знали
0
Snickers077
7 / 7 / 2
Регистрация: 12.01.2014
Сообщений: 38
20.02.2014, 11:47  [ТС] #3
Цитата Сообщение от dzrkot Посмотреть сообщение
cb[1].name;

ну и кстати начинать надо с 0 если вдруг вы не знали
Спасибо, заработало!
То, что с нуля - это я знаю, просто общий случай взял))
В книге написано, что если через указатель обращаешься - надо всегда использовать "->", а не точку. А здесь почему то точка работает...
0
Kuzia domovenok
2062 / 1907 / 176
Регистрация: 25.03.2012
Сообщений: 6,571
Записей в блоге: 1
20.02.2014, 12:33 #4
Потому, что обращаешься не к указателю, а уже разыменованному элементу массива!
cb указатель на массив
cb[1] сам элемент
cb+1 указатель
(cb+1)->name обращение через указатель
cb[1].name обращение к самому элементу
1
20.02.2014, 12:33
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.02.2014, 12:33
Привет! Вот еще темы с ответами:

Удаление динамического массива структур - C++
Если удалять массив структур как обычно пишут, то при запросе следующей структуры из массива на вывод она отображается. То есть происходит...

Очищение динамического массива структур - C++
Здравствуйте, Господа. Есть структура, например такая: typedef struct cont1 { long int n; char name; char hoho; }CONTACT; И...

Передача динамического массива структур в функцию - C++
Помогите, пожалуйста переделать. Нужно передать динамический массив. Есть такой код: #include&lt;iostream&gt; using namespace std; void...

Обращение к элементу динамического массива структур - C++
Само задание: http://cs412722.vk.me/v412722398/4e77/fUkq93u2HDE.jpg пока написал только это: #include &lt;iostream&gt; using namespace std;...


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

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

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