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

Переписать функцию, добавив параметр - C++

Восстановить пароль Регистрация
 
MyLifeStyle
Заблокирован
26.05.2014, 20:32     Переписать функцию, добавив параметр #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
struct Service
{
   char S_Name[20]; 
   char S_Code[10];  
   float price;
   int days;
};
void add_Service();
int main()
{
add_Service();
system("Pause");
}
 
void add_Service()
{
    system("cls");
    cout<<"Enter number of Service:";
    int n;
    cin>>n;
    Service * Services=new Service[n];
    for (int i=0;i<n;i++)
    {
    cout<<" Service Name: ";
    cin>>Services[i].S_Name;
    cout<<" Service Code: ";
    cin>>Services[i].S_Code;
    cout<<" Price[$]: ";
    cin>>Services[i].price;
    cout<<" days: ";
    cin>>Services[i].days;
    }
ofstream fo("Services.txt", ios::app|ios::binary);
if(!fo)
fo.open("Services.txt", ios::out|ios::binary);
for(int i=0; i<n; i++)
fo.write((char*)&Services[i], sizeof(Service));
cout<<"\n-----[Information has been added]-----\n";
fo.close();
system("Pause");
}
Спасибо за внимание.

Добавлено через 17 минут
что бы была с параметром.*

Добавлено через 1 час 2 минуты
*Services
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
 Аватар для zss
5953 / 5558 / 1787
Регистрация: 18.12.2011
Сообщений: 14,204
Завершенные тесты: 1
26.05.2014, 21:18     Переписать функцию, добавив параметр #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
struct Service
{
   char S_Name[20]; 
   char S_Code[10];  
   float price;
   int days;
};
void add_Service(Service*,int n);
int main()
{
    system("cls");
    cout<<"Enter number of Service:";
    int n;
    cin>>n;
    Service* S=new Service[n];
    add_Service(S,n);
    delete[] S;
    system("Pause");
    return 0;
}
 
void add_Service(Service* Services,int n)
{
    ofstream fo("Services.txt", ios::app|ios::binary);
        if(!fo)
            return;
    for (int i=0;i<n;i++)
    {
        cout<<" Service Name: ";
        cin>>Services[i].S_Name;
        cout<<" Service Code: ";
        cin>>Services[i].S_Code;
        cout<<" Price[$]: ";
        cin>>Services[i].price;
        cout<<" days: ";
        cin>>Services[i].days;
    }
    for(int i=0; i<n; i++)
         fo.write((char*)&Services[i], sizeof(Service));
    cout<<"\n-----[Information has been added]-----\n";
    fo.close();
    system("Pause");
}
MyLifeStyle
Заблокирован
27.05.2014, 07:35  [ТС]     Переписать функцию, добавив параметр #3
Как быть с считыванием.
Попробовал написать, не получилось... Выкидывает из программы.

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
void see_Client(Client* Clients,int size);
int main()
{
    system("cls");
    int size;
    Client * C=new Client[size];
    see_Client(C,size);
    delete[] C;
}
 
void see_Client(Client* Clients,int size)
{
ifstream fi("Clients.txt", ios::binary);
if(!fi) cout<<"Error with file\n"<<endl;
else {fi. seekg(0,ios::end);
size=fi.tellg();
size=size/sizeof(Client);fi.seekg(0, ios::beg);
fi.read ((char*)Clients,sizeof(Client)*size);
 
cout << "||----------------|----------------|---------------|---------------|----------||";
cout << "||     Name:      |    Surname:    |     Code:     |   Addres:     | Client(n)||";
cout << "||----------------|----------------|---------------|---------------|----------||";
    for(int i=0;i<size;i++)
{
        cout << "||" << setw(16) << Clients[i].Name;
        cout << "|" << setw(16) << Clients[i].Surname;
        cout << "|" << setw(15) << Clients[i].Code;
        cout << "|" << setw(15) << Clients[i].Address;
        cout << "|" << setw(8) << Clients[i].c_number; 
        
        cout    << setw(4) << "||"; 
}
cout << "||----------------|----------------|---------------|---------------|----------||";
system ("Pause");}}
Выкидывает из программы.

Добавлено через 7 часов 16 минут
Помогите пожалуйсто
zss
Модератор
Эксперт С++
 Аватар для zss
5953 / 5558 / 1787
Регистрация: 18.12.2011
Сообщений: 14,204
Завершенные тесты: 1
27.05.2014, 08:09     Переписать функцию, добавив параметр #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
1. Открылся ли файл? Или Срабатывает cout<<"Error with file\n"
2.
Цитата Сообщение от MyLifeStyle Посмотреть сообщение
fi.read ((char*)Clients,sizeof(Client)*size);
В файле действительно находятся правильные бинарные данные?
MyLifeStyle
Заблокирован
27.05.2014, 09:10  [ТС]     Переписать функцию, добавив параметр #5
Цитата Сообщение от zss Посмотреть сообщение
1. Открылся ли файл? Или Срабатывает cout<<"Error with file\n"
2.
Сообщение от MyLifeStyle
fi.read ((char*)Clients,sizeof(Client)*size);
В файле действительно находятся правильные бинарные данные?
ругается по поводу переменной int size.

Добавлено через 10 минут
The variable "size" is being used without being initialized.
zss
Модератор
Эксперт С++
 Аватар для zss
5953 / 5558 / 1787
Регистрация: 18.12.2011
Сообщений: 14,204
Завершенные тесты: 1
27.05.2014, 09:19     Переписать функцию, добавив параметр #6
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
int size;
cin>>size;
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.05.2014, 10:14     Переписать функцию, добавив параметр
Еще ссылки по теме:

Как правильно вызвать функцию с указателем на другую функцию как параметр C++
C++ Указатели - разобрать функцию, принимающую параметр
Не меняется переданный в функцию параметр C++

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

Или воспользуйтесь поиском по форуму:
MyLifeStyle
Заблокирован
27.05.2014, 10:14  [ТС]     Переписать функцию, добавив параметр #7
Цитата Сообщение от zss Посмотреть сообщение
C++
1
2
int size;
cin>>size
;
Извиняюсь не то хотел.
Надо чтобы пользователь не чего не водил для считывание из файла, но считались все данные.
Не в том направлении задал вопрос.
Как должен выглядеть параметр функции? для полного считывания, не вводя пользователем [size].
Yandex
Объявления
27.05.2014, 10:14     Переписать функцию, добавив параметр
Ответ Создать тему
Опции темы

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