Se una funzione è definita dopo quella corrente devi scriverne prima il prototipo (ovvero la definizione della funzione privata del corpo) per consentire al compilatore di sapere da subito che parametri richiede, che tipo restituisce, eccetera.
codice:
#include <iostream>
#include <stdlib.h>
using namespace std;
// prototipo della funzione
void input(int& r,int U[],int &k);
int main(int argc, char *argv[])
{
const int num_element=150;
int V[num_element],A[num_element];
int r,r2;
int k;
input(r,V,k);
system("PAUSE");
return 0;
}
void input(int& r,int U[],int &k)
{
int i;
cout<<"inserisci riempimento"<<endl;
cin>>r;
cout<<"inserisci valore k"<<endl;
cin>>k;
for(i=0; i<r; i++)
{
cout<<"inserisci valore numero"<<i+1<<endl;
cin>>U[i++];
}
}
in generale è buona norma scrivere tutti i prototipi delle funzioni definite del .cpp corrente in cima al file, dopo le inclusioni degli header, o, anche meglio, in un header separato che viene poi incluso (questo è utile se si ha un progetto con più file).