PDA

View Full Version : [C++] Aiuto C++!


Armageddon3000
08-05-2006, 16:18
Ciao ragazzi sono un newbie autodidatta ke sta cercando di imparare la programmazione con C++ da un libro della McGraw Hill (mi è stato molto consigliato ;-P) e ho bisogno di un aiuto... Sto cercando di fare uno dei piccoli (e stupidi) prgrammini iniziali e quando lo compilo e lo eseguo mi appare per una frazione di secondo lo skermo nero ma poi scompare subito... Nella scrittura non mi pare di aver commesso errori, anke perke senno il compilatore me lo avrebbe segnalato...
Come mai succede cosi?
Vi prego rispondetemi!

Vi ringrazio in anticipo Ciao Ciao



P.S.: Sto cercando un "amico" su msn ke ogni tanto mi potesse spiegare un paio di cosette nel caso non le sapessi o non le capissi ;-P Se qualkuno è interessato si faccia avanti!

scorpion89
08-05-2006, 16:24
Perchè quando vai a eseguire il programma ti fa la printf e poi trova il return ed esce!!
Mettici un getch();
e finche nn premi un tasto nn fa continuare il programma!!

Ciao

PS ti ho detto delle istruzioni del c ma cmq vanno bene anke nel c++, la gecth è contenuta nel conio.h

andbin
08-05-2006, 16:28
Sto cercando di fare uno dei piccoli (e stupidi) prgrammini iniziali e quando lo compilo e lo eseguo mi appare per una frazione di secondo lo skermo nero ma poi scompare subito... Nella scrittura non mi pare di aver commesso errori, anke perke senno il compilatore me lo avrebbe segnalato...
Come mai succede cosi?Ciao. Non è un errore. Questi programmi "iniziali" sono programmi che "girano" in una console. Se il programma non è interattivo cioè non aspetta la pressione di qualche tasto, termina subito e quindi la console si chiude.
Le soluzioni quindi sono 2: puoi mettere alla fine del programma (prima della fine del main), una istruzione che aspetta un tasto oppure puoi aprire un prompt dei comandi a parte e lanciare "a mano" l'eseguibile. Dipende da quale ti è più comodo.

Armageddon3000
08-05-2006, 16:37
Grazie ragazzi! Penso ke ci sentiremo molto presto :p

Armageddon3000
08-05-2006, 21:11
ehm skusate... ma getch(); dove e come lo devo mettere... ho provato in tutti i modi ma niente... AIUTOOO q_q :cry: :sob:

scorpion89
08-05-2006, 21:22
Listato di esempio(anke se è C)

#include <stdlib.h>
#include <conio.h>

int main(void){
//scriviamo a video
printf("Ok vediamo se la getch funziona\n");
//interrompiamo il flusso aspettando un tasto
getch();
return 0;
}


Questo programma nn è portabile visto ke sono UNIX nn esiste la getch();
Quindi se usi linux nn ti funziona!!

Ciao

Ziosilvio
08-05-2006, 21:48
Mettici un getch();
Che non è standard.
gecth è contenuta nel conio.h
Che non è standard.

Un modo di arrestare l'esecuzione fino alla pressione del tasto Invio, e che usa solo funzioni standard, è:
while (getchar() != '\n')
;