Blog del corso di Programmazione (9 CFU) tenuto da Marco La Cascia presso la sede di Agrigento dell'Universita' di Palermo per il corso di laurea in Ingegneria Gestionale e Informatica. Tratta la programmazione a oggetti in C++.
ho provato a fare l'esercizio n° 6, ho creato la funzione void per convertire il numero da decimale a binario ma appena compilo mi da un errore indefinibile lungo un bel pò di pagine di cui non si può definire da dove proviene l'errore
cout <<stampa(a); commentando questa linea infatti il programma compila e aggiungo anche che se non creo la funzione stampa ma metto tutto nel main, il programma compila e funziona correttamente. se qualcuno è riuscito a farlo o magari mi saprebbe aiutare mi fa un grande piacere...
ho risolto, non avevo fatto caso che avendo una funzione void non dovevo mettere il cout. funziona perfettamente. Spero che sia d'aiuto agli altri anche se è stata una dimenticanza grave :). Grazie mille
ho provato a fare l'esercizio n° 6, ho creato la funzione void per convertire il numero da decimale a binario ma appena compilo mi da un errore indefinibile lungo un bel pò di pagine di cui non si può definire da dove proviene l'errore
RispondiEliminaper chiarezza vi allego la mia funzione:
void stampa(int x){
int n=128;
for(int i=0; i<8; i++){
if(x&n){
cout<<'1';}
else{ cout<<'0';}
n/=2;
}
}
la mia chiamata a funzione è la seguente:
cout <<stampa(a);
commentando questa linea infatti il programma compila e aggiungo anche che se non creo la funzione stampa ma metto tutto nel main, il programma compila e funziona correttamente.
se qualcuno è riuscito a farlo o magari mi saprebbe aiutare mi fa un grande piacere...
Penso dipenda dal fatto che cerchi di far stampare un void infatti la tua funzione stampa restituisce un void
RispondiEliminaNimada ha ragione, stampa() ti restituisce void e un void non puo' essere inserito nello stream.
RispondiEliminaQuesto commento è stato eliminato dall'autore.
RispondiEliminaho risolto, non avevo fatto caso che avendo una funzione void non dovevo mettere il cout. funziona perfettamente. Spero che sia d'aiuto agli altri anche se è stata una dimenticanza grave :). Grazie mille
RispondiEliminaGrazie Gaetano! Avevo lo stesso identico problema =)
RispondiElimina