Salve a tutti, dato che è il mio primo messaggio in questo forum mi presento: sono Bryan, ho 16 anni e sono in terza superiore (scientifico).
Il mio problema è questo:
volevo fare un po' di pratica sulle struct (non le ho ancora fatte a scuola, ma volevo portarmi un po' avanti..) e ho deciso di fare un programma che mi permettesse di inserire i dati (nome, cognome ecc..) di N insegnanti e in seguito di stamparli a video.
Ho creato una funzione che carichi l'array, il problema subentra quando, richiamando la funzione, provo a passare l'array, dandomi questo errore:
conversion from `Docente*' to non-scalar type `Docente' requested
Il codice del source è questo (ci sono alcuni prototipi di altre funzioni che avrei sviluppato in seguito)
codice:
#include <iostream>
#include <conio.h>
using namespace std;
struct Docente{
string Nome;
string Cognome;
int AnniInsegnamento;
int NumeroClassi;
int Eta; };
void CaricaVettore( Docente, int );
void StampaNomi( Docente );
void StampaCognomi( Docente );
void StampaEta( Docente );
void StampaAnni( Docente );
void StampaClassi( Docente );
int main()
{
int nMax;
cout << "Numero di insegnanti? ";
cin >> nMax;
Docente Insegnanti[nMax];
CaricaVettore(Insegnanti, nMax);
getch();
return 0;
}
void CaricaVettore( Docente Insegnanti[], int a )
{
for( int j=0; j<a; j++ ){
cout << "Nome: ";
cin >> Insegnanti[j].Nome;
cout << "Cognome: ";
cin >> Insegnanti[j].Cognome;
cout << "Eta': ";
cin >> Insegnanti[j].Eta;
cout << "Anni d'insegnamento: ";
cin >> Insegnanti[j].AnniInsegnamento;
cout << "Numero di classi: ";
cin >> Insegnanti[j].NumeroClassi;
cout << endl << endl;
}
return; }
E l'errore me lo segna proprio sulla chiamata della funzione dal main.
Aspetto il vostro aiuto!!
Non c'è più bisogno d'aiuto, ho sistemato la faccenda utilizzando un puntatore!! ^^