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

Как объявить массив структур? - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 45, средняя оценка - 4.87
2009
2 / 2 / 0
Регистрация: 23.11.2009
Сообщений: 35
27.04.2010, 21:52     Как объявить массив структур? #1
Здраствуйте! Подскажите пожалуйста как объявляется массив структур и как потом записать элементы туда?
Например такая структура:
C++
1
2
3
4
5
6
7
8
9
struct shablon
{ char name[20];
   char lastname[30];
   int age;};
 
void main()
{ shablon man;
   cin>>man.name>>man.lastname>>man.age;
}
Заранее спасибо!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Genius Ignat
1233 / 771 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
27.04.2010, 22:19     Как объявить массив структур? #2
C++
1
2
3
4
5
6
7
8
shablon man[10];   //массив из десяти структур..
 
man[0].age=10;    //обращаемся к первой структуре.
man[1].age=20;    //обращаемся ко второй структуре.
 
cin>>man[0].name;   //обращаемся к первой структуре.
cin>>man[1].name;   //обращаемся ко второй структуре.
//....
2009
2 / 2 / 0
Регистрация: 23.11.2009
Сообщений: 35
27.04.2010, 23:59  [ТС]     Как объявить массив структур? #3
Всплыл еще один вопрос...Я хочу сделать отдельную функцию для ввода элементов структуры...Что мне надо передавать вместе с количеством массива структур в функцию?
пример:
C++
1
2
3
void struct_in(shablon man [10])   /*правильно ли я написал передаваемые значения?*/
{ for(int i=0;i<10;i++) cin>>man[i].name>>man[i].lastname>>man[i].age;
}
Vorona
Peace 2 all shining faces
 Аватар для Vorona
660 / 522 / 44
Регистрация: 05.03.2010
Сообщений: 1,256
28.04.2010, 00:47     Как объявить массив структур? #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
 
#define n 10
 
struct shablon{ 
    char name[20];
    char lastname[30];
    int age;
}man[n];
 
void struct_in(shablon*);
 
int main(){ 
    struct_in(man);
    system("pause");
    return 0;
}
 
void struct_in(shablon *man){   
    for(int i = 0; i < n; i++)
        std::cin >> man[i].name >> man[i].lastname >> man[i].age;
}
можно так
kazak
 Аватар для kazak
3029 / 2350 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
28.04.2010, 01:12     Как объявить массив структур? #5
Вместе с массивом желательно передавать его размер.
Yandex
Объявления
28.04.2010, 01:12     Как объявить массив структур?
Ответ Создать тему
Опции темы

Текущее время: 00:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru