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

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

Восстановить пароль Регистрация
 
InSpectr
 Аватар для InSpectr
10 / 10 / 1
Регистрация: 09.09.2013
Сообщений: 53
11.09.2013, 15:25     Передача структуры в функцию #1
Всем добрый день.
Есть программа разбитая на файлы. как объвить, определить и вызвать функцию в которую передать значения структуры

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
43
44
#include "stdafx.h"
#include <iostream>
#include <string>
#include <Windows.h>
#include "bib.h"
 
using namespace std;
 
 
struct NOTE {
char NAME[30];
long long int TELE;
int BDAY[3];
}BLOCKNOTE[8];
 
 
int main()
{ 
    struct NOTE s;
    char month;
    char m[15];
    int i,q,temp,n,j,ch,c,k,l,p=1,data;
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    cout<<"Введите Имя, Телефон, Дату рождения\n";
    for(i=0;i<8;i++)
    { 
        gets(BLOCKNOTE[i].NAME);
        if(!strcmp(BLOCKNOTE[i].NAME,"*"))
            break;
        cin >>BLOCKNOTE[i].TELE;
        for(q=0;q<3;q++)
            cin >>BLOCKNOTE[i].BDAY[q];
        cin.get(); 
    }
 
 
---------------
    //как вызвать функцию schi
-----------------   
 
 
return 0;
}
Файл .h
C++
1
2
3
4
5
6
7
#ifndef bib_H
#define bib_H
int mont(char *m);
------------------------------------
//как тут объявить функцию schi
-------------------------------------------
#endif
файл chsi.cpp
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
#include "stdafx.h"
#include <iostream>
#include <string>
#include <Windows.h>
#include "bib.h"
using namespace std;
 
 
------------------------
    //как определить функцию??
------------------------
{
    int sh,q;
     cout<<"\n--------------------------------------\n";
    cout<<"|               Люди               |\n";
    cout<<"--------------------------------------\n";
    cout<<"--------------------------------------\n";
    for(sh=0;sh<i;sh++)
    {
        cout<<"\n";
        cout<<" Имя: "<<BLOCKNOTE[sh].NAME;
        cout<<" Телфон: "<<BLOCKNOTE[sh].TELE;
        cout<<" Дата: ";
        for(q=0;q<3;q++)
        {
            cout<<" "<< BLOCKNOTE[sh].BDAY[q] ;
        }
    }
    cout<<"\n";
    cout<<"--------------------------------------\n";
    
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
mr_Skat
 Аватар для mr_Skat
6 / 6 / 1
Регистрация: 11.08.2013
Сообщений: 29
11.09.2013, 15:32     Передача структуры в функцию #2
Здесь во первых структуру необходимо объявить в заглавном файле.
Во вторых передача структуры функции:

C++ (Qt)
1
void fun (NOTE str);
InSpectr
 Аватар для InSpectr
10 / 10 / 1
Регистрация: 09.09.2013
Сообщений: 53
11.09.2013, 15:35  [ТС]     Передача структуры в функцию #3
Можно подробнее как ее вызвать объявить и определить... будьте добры
lemegeton
 Аватар для lemegeton
2909 / 1338 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
11.09.2013, 15:57     Передача структуры в функцию #4
Странный у вас код. В С++ со структурами обычно не так работают, как в С.

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
#include <iostream>
// структура
struct Note {
  char name[30];
  long long int phone;
  int birthday[3];
};
 
// пример функции
void printNote(const Note &note) {
  std::cout << "Note{" <<
    "name = '" << note.name << "', " <<
    "phone = " << note.phone << ", "<<
    "birthday = " << note.birthday[0] << "." << 
    note.birthday[1] << "." <<
    note.birthday[2] << "}" <<
    std::endl;
}
 
int main(int, char **)  {
  Note blocknote[] = {
    {"Ivan", 1234567, {11, 9, 1982}},
    {"Vasiliy", 5555555, {12, 7, 1981}}    
  };
  int numberOfNotes = sizeof(blocknote) / sizeof(blocknote[0]);
  
  // пример вызова:
  for (int i = 0; i < numberOfNotes; ++i) {
    printNote(blocknote[i]);
  }
  
  return 0;
}
InSpectr
 Аватар для InSpectr
10 / 10 / 1
Регистрация: 09.09.2013
Сообщений: 53
11.09.2013, 16:01  [ТС]     Передача структуры в функцию #5
Спасибо.
Yandex
Объявления
11.09.2013, 16:01     Передача структуры в функцию
Ответ Создать тему
Опции темы

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