Struct presenting problem

1

I am not able to compile the program has error in the declaration of the variable struct product, when I try to create an instance in main .

#include <iostream>

using namespace std;


struct produto;

int main() {
    produto prod1={"Caneca",5.00}; // Ao compilar apresenta erro nessa linha.
    cout<<"Nome do Produto: \n";
    cin>>prod1.nome;
    cout<<"Valor de venda: \n";
    cin>>prod1.valorvenda;


    system("pause");
    return 0;
}


struct produto{
    char nome[21];
    float valorvenda;
};
    
asked by anonymous 12.09.2017 / 01:15

1 answer

3

Declare the structure before using it.

#include <iostream>
using namespace std;

struct produto {
    char nome[21];
    float valorvenda;
};

int main() {
    produto prod1 = { "Caneca", 5.00 };
    cout << "Nome do Produto: \n";
    cin >> prod1.nome;
    cout << "Valor de venda: \n";
    cin >> prod1.valorvenda;
}

See running on ideone . And at Coding Ground . Also I put GitHub for future reference .

For an exercise like this it's okay to use float for money, but do not do this in real applications .

    
12.09.2017 / 01:29