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

Передача в функцию элементов структуры - C++

Войти
Регистрация
Восстановить пароль
 
al072
14 / 14 / 0
Регистрация: 03.02.2010
Сообщений: 132
22.09.2011, 17:46     Передача в функцию элементов структуры #1
Всем доброго времени суток! Подскажите пожалуйста как передать элементы структуры в функцию.Задача следующая

есть структура данных:

C++
1
2
3
4
5
struct Month
{
    char Mon [12];
    int Day[];
};
элементы структуры инициализированы следующим образом:

C++
1
2
Month MD[]=
{{"Январь",31},{"Февраль",30},{"Март",31},{"Апрель",31},{"Май",30},{"Июнь",31},{"Июль",31},{"Август",30},{"Сентябрь"},{"Октябрь",31},{"Ноябрь",31},{"Декабрь",31}};
как передать эти элементы в функцию которая будет выводить месяц и день в консольном приложении,
функцию пробовал писать вот так:

C++
1
2
3
4
5
6
void showtable (MD[].Mon,MD[].Day)
{
   int count=0;
for (MD[count].Mon,MD[count].Day;count<=12;++count)
cout<<MD[count].Mon<<' '<<MD[count].Day<<endl;
}
реализации:

C++
1
2
3
4
5
6
7
8
9
#include <iostream>
using std::cout;
using std::endl;
 
int main()
{
   showtable(MD[].Mon,MD[].Day);
   return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.09.2011, 17:46     Передача в функцию элементов структуры
Посмотрите здесь:

Передача структуры в функцию C++
Передача структуры в функцию C++
C++ Передача значения из поля структуры в функцию
Передача структуры в функцию C++
Передача структуры в функцию C++
Передача структуры в функцию C++
Передача в функцию ячейку структуры C++
C++ Передача члена структуры в функцию
C++ Передача структуры в функцию
C++ Передача структуры в функцию
Передача структуры в функцию C++
Передача структуры в функцию C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kravam
быдлокодер
 Аватар для kravam
1513 / 873 / 44
Регистрация: 04.06.2008
Сообщений: 5,302
22.09.2011, 18:17     Передача в функцию элементов структуры #2
В функцию достаточно передать указатель на массив элементов типа Mont, правильно заполненный
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <windows.h>
#include <iostream>
#include <stdio.h>
#include <string.h>
 
 
struct Month
{
    Month (char* str, int d):Day(d){strcpy (Mon, str);}
    char Mon [12];
    int Day;
};
 
 
 
    
 
 
 
void showtable (Month* MD){
   int count=0;
   for (;count<12;++count)  
    cout<<MD[count].Mon<<' '<<MD[count].Day<<endl;
}
 
 
 
int main(){
 
 SetConsoleCP(1251);
 SetConsoleOutputCP(1251);
 
Month MD [12]= {Month((char*)"ГџГ*ГўГ*ðü",31),Month((char*)"ÔåâðГ*ëü",31), Month ((char*)"ГЊГ*ðò",31),\
               Month((char*)"Àïðåëü",31),Month((char*)"ГЊГ*Г©",31), Month ((char*)"ÈþГ*Гј",31),\
               Month((char*)"Èþëü",31),Month((char*)"ГЂГўГЈГіГ±ГІ",31), Month ((char*)"ÑåГ*òáÿðü",31),\
               Month((char*)"Îêòÿáðü",31),Month((char*)"Íîÿáðü",31), Month ((char*)"ÄåêГ*áðü",31)} ;
 
   
   showtable(MD);
   getchar ();
   return 0;
}
al072
14 / 14 / 0
Регистрация: 03.02.2010
Сообщений: 132
23.09.2011, 09:16  [ТС]     Передача в функцию элементов структуры #3
Спасибо за информацию!разобрался..
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
24.09.2011, 07:51     Передача в функцию элементов структуры #4
C
1
2
3
4
5
6
7
8
9
10
struct Month {
    char Mon[12];
    int Day;
};
 
void showtable(struct Month m[], int n);
 
...
 
    showtable(MD, 12);
C
1
2
3
4
5
6
7
void showtable(struct Month m[], int n);
{
    while (n-- > 0) {
        printf("%s %d\n", m->Mon, m->Day);
        m++;
    }
}
Yandex
Объявления
24.09.2011, 07:51     Передача в функцию элементов структуры
Ответ Создать тему
Опции темы

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