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

Функция не принимает параметр - C++

Восстановить пароль Регистрация
 
влад0
4 / 4 / 0
Регистрация: 22.05.2012
Сообщений: 115
15.03.2014, 20:03     Функция не принимает параметр #1
Есть структура:
C++
1
2
3
4
5
6
struct tovar
{
    char name_prod;
    char country_prod;
    int number_prod;
};
Есть программа:
C++
1
2
3
4
5
6
7
8
char program_search_country()
{
    int count;
    read_1(count);
    tovar *A =new tovar[count]; 
    read_2(count, A);
    system("pause");
return 0;
Есть функция считывания из файла:
C++
1
2
3
4
5
6
7
8
9
10
tovar *read_2(int c, tovar *a)
{
    fin.open("input.txt");
    for (int i=0; i<c; i++)
    {
        fin>>a[i].name_prod>>a[i].country_prod>>a[i].number_prod;
    }
    fin.close();
    return a;
}
Совственно вывод ошибку:
read_2: невозможно преобразовать параметр 2 из 'tovar *' в 'tovar'
Лучшие ответы (1)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
15.03.2014, 20:11     Функция не принимает параметр #2
Цитата Сообщение от влад0 Посмотреть сообщение
невозможно преобразовать параметр 2 из 'tovar *' в 'tovar'
а случайно нет прототипа такого?
C++
1
tovar *read_2(int c, tovar a)
На какую строку ошибка ссылается?
влад0
4 / 4 / 0
Регистрация: 22.05.2012
Сообщений: 115
15.03.2014, 20:17  [ТС]     Функция не принимает параметр #3
Цитата Сообщение от Tulosba Посмотреть сообщение
На какую строку ошибка ссылается?
Вот на эту строку ошибочка:
C++
1
 read_2(count, A);
Прототипы есть все...
C++
1
2
3
4
...
char program_search_country();
....
tovar *read_2(int &c, tovar *a);
recoder
 Аватар для recoder
129 / 129 / 28
Регистрация: 13.09.2013
Сообщений: 260
Записей в блоге: 2
15.03.2014, 20:23     Функция не принимает параметр #4
Можно весь код программы
влад0
4 / 4 / 0
Регистрация: 22.05.2012
Сообщений: 115
15.03.2014, 20:25  [ТС]     Функция не принимает параметр #5
Цитата Сообщение от recoder Посмотреть сообщение
Можно весь код программы
Можно:
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <iomanip>
 
 
using namespace std;
ifstream fin;
 
struct tovar
{
    char name_prod;
    char country_prod;
    int number_prod;
};
 
 
 
void menu(int num); 
void close(void); 
char program_search_country();
void read_1(int &c);
tovar *read_2(int, tovar);
 
int main()
{
    setlocale(0,"");
    int num_of_program=0;//Переменная для выбора операции из меню
    cout<<"Что вы хотите сделать?\n\t1.Поиск товара производителя\n\t2.Вывод общего кличества товара\n\t0.Выход из программы\nВаш выбор: ";
    cin>>num_of_program;//Ввод значения переменной для выбора операции
    menu(num_of_program);//Вызов фунции меню
    close();
    return 0;
}
 
void menu(int num)
{
    system("cls");//Очистка экрана
    switch (num)
    {
    case 1:{program_search_country(); break;}
    case 2:{/*Общее количество товара*/break;}
    case 0:{close(); break;}
    default:
        {
            main();
            break;
        }
    }
}
 
void close(void)
{
    system("cls"); //Очистка экрана
    cout<<"Спасибо за использование программы!\n"; 
    system("pause"); //Задержка окна
}
 
 
char program_search_country()
{
    int count;
    read_1(count);
    tovar *A =new tovar[count]; 
    read_2(count, A);
    //cout<<"\ncount:"<<count<<endl;
    system("pause");
return 0;
} 
void read_1(int &c)
{
    fin.open("input.txt");
    fin>>c;
    fin.close();
}
tovar *read_2(int c, tovar *a)
{
    fin.open("input.txt");
    for (int i=0; i<c; i++)
    {
        fin>>a[i].name_prod>>a[i].country_prod>>a[i].number_prod;
    }
    fin.close();
    return a;
}
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
15.03.2014, 20:40     Функция не принимает параметр #6
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от влад0 Посмотреть сообщение
Прототипы есть все...
Цитата Сообщение от влад0 Посмотреть сообщение
tovar *read_2(int &c, tovar *a);
А на самом деле:
C++
1
tovar *read_2(int, tovar);
А должно быть:
C++
1
tovar *read_2(int, tovar*);
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.03.2014, 20:41     Функция не принимает параметр
Еще ссылки по теме:

C++ Написать функцию atoi(), которая принимает параметр - строку цифр и возвращает соответствующее ей целое
Функция не принимает 0 аргументов C++
Функция не принимает 0 аргументов C++

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

Или воспользуйтесь поиском по форуму:
влад0
4 / 4 / 0
Регистрация: 22.05.2012
Сообщений: 115
15.03.2014, 20:41  [ТС]     Функция не принимает параметр #7
Спасибочки!
Yandex
Объявления
15.03.2014, 20:41     Функция не принимает параметр
Ответ Создать тему
Опции темы

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