View Full Version : Passaggio indirizzo ??
Ciao, sto cercando di fare una funzione C che dev'essere intestata così :
leggi(int dati[],int &n)
Il compilatore mi segnala un errore nella dichiarazione del parametro n, che devo passare x indirizzo !!
Che c'è che non va please ?? :confused:
Se ho capito bene il problema...
nella dichiarazione / definizione della funzione devi dichiararla così:
void leggi (int dati[],int* n){...} //indica al compilatore che gli arriverà un indirizzo
quando invece la richiami:
int n;
leggi(dati,&n); //indica al compilatore di passargli l'indirizzo della variabile n
No, il problema è che la dichiarazione della funzione mi è stata data (dal profe !!) come ho scritto prima leggi(int dati[],int &n) ... solo dichiarandola così ho un errore del compilatore !!
Secondo me non si può proprio dichiarare così quel parametro !!
Mi sembra (cioe' non ne sono sicuro) che la sintassi con la "&", sia ammessa nel c++ e non nel c.
Quindi in c devi per forza scriver int *n, mentre in c++ puoi permetterti di scrivere int &n.
Qualcuno conferma ?
Aloha
Giusto... I passaggi per riferimento in C non ci sono ;)
Uhm...a 'sto punto mi sa che mi serve il c++ !!
Esiste un editor/compilatore c++ free da scaricare da qualche parte please ??
Per Windows : http://www.bloodshed.net/dev/devcpp.html
Prendi quello con mingw 2.95.3...
Ma che compilatore hai ? Molte volte i compilatori discriminano fra C e C++ in base all'estensione del file (.c per il C, .cpp per il C++)...
:rolleyes:...mi vergogno un po'...vado avanti con un Turbo C 2.01 che era disponibile sul sito Borland una...'antina di anni fa !! :eek:
Sulla versione 3 si poteva programmare anche in C++...
Prova a salvare un file con estensione CPP...
Già che ci siamo mi dareste anche una mano x installare il c++ che ho scaricato dal link di prima ??
Se cerco di compilare un qualsiasi mio programmino che per il TC (x dos !!) andava,mi spara fuori una montagna di errori che credo abbiano a che fare che gli #include che inserisco in testa al programma !!
C'è un metodo diverso x il c++ rispetto al c ??
No...ma probabilmente i file da includere sono diversi...
Che .h includi ?
Originally posted by "rasega"
No, il problema è che la dichiarazione della funzione mi è stata data (dal profe !!) come ho scritto prima leggi(int dati[],int &n) ... solo dichiarandola così ho un errore del compilatore !!
Secondo me non si può proprio dichiarare così quel parametro !!
è probabile che si sia sbagliato anche il prof ;) capita spesso!!!
Informati bene se fate c o c++ che c'è una bella differenza...
Son ben informato sul fatto che nei nostri esami le cose non sono mai chiare, la creazione di quella funzione faceva parte di un appello nel quale non è passato praticamente nessuno.
Il corso prevede C...e stop !! (Info 2 di ing. elettronica !!)
beh se è C e basta allora il prof si è sbagliato... :p
OK...oltre a me vaglielo a dire a quei 30 che ha segato all'esame !!!!!!!! :eek:
E complimenti a questi professori che non sanno dve finisce il C e dove inizia il C++...
Originally posted by "cionci"
No...ma probabilmente i file da includere sono diversi...
Che .h includi ?
..mi ero perso in altre discussioni ;) .
Ad esempio quando compilo mi dice :
"implicit declaretion of........clrscr()"
e altre che prima usavo normalmente !!
Includo <stdio.h> !!
clrscr() non c'è...devi usare system("cls");
Urgh !!
E come faccio a sapere quali funzioni sostituiscono altre ??
Ma non c'è un reference all'interno del compilatore che mi hai consigliato in precedenza in modo da vedere le funzioni disponibili ??
(vedi il vecchio CTRL+F1 del Turbo C !!)
(thanx !!)
Whoopp (please) :confused:
Va cercato...sinceramente non so dove lo puoi trovare...
Il compilatore GCC supporta in generale tutti gli header standard... E' il compilatore che usavi prima che non è per niente standard...
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.