ciao a tutti!
sto tendando di scrivere un programma che mi permetta di gestire una rubrica.. qnd tento di compilare però il dev mi da questo errore:conversion from `rubrica*' to non-scalar type `rubrica' requested nel main quando scrivo le funzioni. qualcuno mi può dare una mano??
MAIN
codice:#include <cstdlib> #include <iostream> #include "header.h" using namespace std; int main(int argc, char *argv[]) { int scelta, r; rubrica c[50]; while(scelta!=0){ cout<<endl<<"\tRubrica"<<endl; cout<<"1)Inserisci Nuovo Contatto."<<endl; cout<<"2)Modifica Contatto."<<endl; cout<<"3)Elimina Contatto."<<endl; cout<<"4)Visualizza Contatto."<<endl; cout<<"0)Esci."<<endl; cin>>scelta; switch(scelta){ case 1:NuovoContatto(c, r); break; case 2:Modifica(c, r); break; case 3:Elimina(c, r); break; case 4:Visualizza(c, r); break; } } system("PAUSE"); return EXIT_SUCCESS; }
HEADER.H
HEADER.CPPcodice:#ifndef header_h #define header_h #include<iostream> #include "string.h" #define N 256 using namespace std; typedef char str [N]; typedef struct{ str nome; int numero, codice;} rubrica; void NuovoContatto(rubrica, int &); void Modifica(rubrica, int &) ; void Elimina(rubrica, int &) ; void Visualizza(rubrica, int &) ; #endif
codice:#include "header.h" void NuovoContatto(rubrica c[], int &r) { cout<<"Inserisci il numero di contatti da inserire :\n "; cin>> r; for (int i=0;i<r;i++){ cout<<"Inserisci il codice del contatto:"; cin>>c[i].codice; cout<<"Inserisci il nome:"; cin>>c[i].nome; cout<<"Inserisci il numero:"; cin>>c[i].numero;} } void Modifica(rubrica c[], int &r) { int k; cout<<"Inserisci il codice del contatto:"<<endl; cin>>k; for(int i=0;i<r;i++){ if(k==c[i].codice){ cout<<"Inserisci il nome:"; cin>>c[i].nome; cout<<"Inserisci il numero:"; cin>>c[i].numero;} } } } void Elimina(rubrica c[], int &r) { int k; cout<<"Inserisci il codice del contatto:"<<endl; cin>>k; for(int i=0;i<r;i++){ if(k==c[i].codice) c[i]=c[i+1]; } r--; } void Visualizza(rubrica c[], int &r) { cout<<"Codice"<<" "<<"Nome"<<" "<<"Numero"<<endl; for(int i=0;i<r;i++){ cout<<c[i].codice<<" "<<c[i].nome<<" "<<c[i].numero<<endl; } }

Rispondi quotando
