错误:在'{'标记之前预期的unqualified-id

时间:2012-03-08 18:00:10

标签: c++

我是C ++的新手,我收到以下错误。我查找了类似的主题,但找不到我需要的答案。这是脚本,错误在第23行:

#include <iostream>
#include <string>

using namespace std;

struct rendeles {
    string nev;
    int mennyiseg;
};

struct teaceg {     
    string nev;
    int mennyiseg;
};

int szam; 

int hanyadikceg (string cegnev); 
{            //line 23
    for (int i=0;i<szam;i++)
    {
        if (cegek[i].nev==cegnev)
            {
                return i;
            }
    }
    return -1;
}

void osszesit()
{
    for (int i=0;i<szam;i++)   
    {

    }
}

int main()
{
    cout << "Hány db rendelés lesz összesen?";
    cin >> szam;

    struct teaceg cegek [szam];
    struct rendeles rendelt [szam];     

    for (int i=0;i<szam;i++)          
    {
        cout << "A(z) " << i+1 <<". cég neve:";
        cin >> rendelt[i].nev;
        cout << "A(z) " << i+1 <<". rendelés mennyisége:";
        cin >> rendelt[i].mennyiseg;
    }

    cout << endl;
    for (int i=0;i<szam;i++) 
    {
        cout << "A(z) " << i+1 << ". rendelés: " << rendelt[i].nev << " " << rendelt[i].mennyiseg << endl;
    }

    return 0;
}

对不起外国标识符: - )

感谢您的帮助!这样的新手错误:-)

我仍然有一个问题:我希望“cegek”和“rendelt”是动态数组。所以它们不可能是全局变量。但在功能“hanyadikceg”我需要获取他们的数据。你能告诉我如何正确地将变量传递给函数吗? (在“hanyadikceg”函数的“()”内写什么)谢谢!

2 个答案:

答案 0 :(得分:8)

删除分号

int hanyadikceg (string cegnev); 
{

应该成为

int hanyadikceg (string cegnev)
{

答案 1 :(得分:2)

从第22行末尾删除分号。