Salve, ho implementato in un file.h una serie di funzioni con un relativo commento che poi ho spostato nella cartella include del compilatore DevC++:
Ma quando richiamo la mia libreria con questa istruzione: #include <funzioni.h>, all'interno di un mio programma con altre librerie mi da una serie di errori legati all' I/O dei dati:codice:/*LISTA FUNZIONI PRESENTI NELLA LIBRERIA "funzioni.h" */ // Massimo comune divisore (MCD) fra due numeri (m,n) con m>n. int MCD (int m,int n) { int r; if (m>n) { do { r=m%n; if (r==0) { return n; } m=n; n=r; } while (r!=0); } } //Ordinamento di un vettore precedentemente caricato, inserire nei parametri attuali (Nome e dimensione del vettore) int ordinamento(int v[],int d) { int i,j,s=0; for(i = 0 ; i < d-1 ; i++) { for(j = i+1 ; j < d ; j++) { if(v[i]>v[j]) { s = v[i]; v[i] = v[j]; v[j] = s; } } } return v[d]; } //Caricamento di un vettore, specificare nei parametri attuali (nome e dimensione del vettore). int caricamento(int v[],int d) { int i; for(i=0;i<d;i++) { cout<<"Scrivi il numero "<<i+1<<":"; cin>>v[i]; } return v[d]; } //Controllo se un numero è primo, specificare nei parametri attuali(il numero); restituisce: True (se il numero è primo), False (se non lo è). bool np (int n) { int i,r=0; bool primo = true; for (i=2;i<=n/2;i++) { r=n%i; if(r==0) { primo=false; break; } } return primo; } //Funzione media, specificare nella lista dei parametri attuali(il numero degli elementi). double media(int n) { int i,b,c=0,r; for(i=0;i<n;i++) { cout<<"Inserisci il numero: "; cin>>b; c+=b; } r=c/n; return r; } //Ricerca di un valore all' interno di un vettore, specificare nei parametri attuali(il nome del vettore e la dimensione). void controllo_valore(int v[],int d) { int i,n; cout<<"Quale numero stai cercando all interno del vettore? "; cin>>n; for(i=0;i<d;i++) { if(v[i]==n) { cout<<"Il numero "<<n<<" e' presente nel vettore."<<endl; break; } if(i==d-1) cout<<"Il numero "<<n<<" e' presente nel vettore."<<endl; } } //Funzione che indica la frequenza con cui si ripete un dato, specificare nei parametri(nome e dimensione del vettore). void frequenza_dato(int v[],int d) { int j,n,i=0; cout<<"Quale dato stai cercando? "; cin>>n; for(j=0;j<d;j++) { if(v[j]==n) i++; } if(i==0) cout<<"Il dato non e' presente."<<endl; else cout<<"Il dato si ripete: "<<i<<" volta/e."<<endl; }
codice://Esempio di codice: #include <iostream> #include <funzioni.h> using namespace std; int main() { system("PAUSE"); return 0; }Se volete altre informazioni scrivetemelo. Grazie per il vostro aiuto.codice://Errori durante la compilazione: 2 C:\Users\Utente\Desktop\abaca.cpp In file included from C:\Users\Utente\Desktop\abaca.cpp C:\Dev-Cpp\include\funzioni.h In function `int caricamento(int*, int)': 54 C:\Dev-Cpp\include\funzioni.h `cout' undeclared (first use this function) (Each undeclared identifier is reported only once for each function it appears in.) 55 C:\Dev-Cpp\include\funzioni.h `cin' undeclared (first use this function) C:\Dev-Cpp\include\funzioni.h In function `double media(int)': 89 C:\Dev-Cpp\include\funzioni.h `cout' undeclared (first use this function) 90 C:\Dev-Cpp\include\funzioni.h `cin' undeclared (first use this function) C:\Dev-Cpp\include\funzioni.h In function `void controllo_valore(int*, int)': 104 C:\Dev-Cpp\include\funzioni.h `cout' undeclared (first use this function) ecc...

Rispondi quotando
