|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Jan 2006
Messaggi: 135
|
Problema dev c++
Ho un problema con questo compilatore che uso sotto windows xp. al momento dell'utilizzo anche di un banalissimo programma la console sparisce quando è il momento di buttare fuori un risultato.Cioè premo invio e la console si chiude. Mi è stato detto che per girare sotto windows ha bisogno di qualche stringa da aggiungere ma non ricordo.Ne sapete qualcosa? grazie
|
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
Il tuo programmino è una applicazione "console" e, presumo, il suo "ciclo" di vita è brevissimo perché magari fai solo dei calcoli e delle printf o roba del genere. Il tuo ambiente di sviluppo (dev-c++) avvia il programma, che termina subito e quindi la console viene chiusa. Hai 2 possibilità: - Lanci il tuo programma da un prompt dei comandi già aperto (che è poi quello che si dovrebbe fare per usare delle applicazioni console). - Metti alla fine del tuo programma una system("pause"); oppure una getchar(); in modo che aspetti un tasto prima di terminare.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
|
|
|
|
|
#3 |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
non c'è una faccina che si fa harakiri?
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Mar 2006
Città: Bottegone (PT)
Messaggi: 978
|
__________________
TC FUCKKKKKKKKKKKKKKKKKKKKKK | Pronto per il prossimo raduno, Oh YEAHHHH
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Dec 2005
Messaggi: 7262
|
|
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Mar 2006
Città: Bottegone (PT)
Messaggi: 978
|
Quote:
__________________
TC FUCKKKKKKKKKKKKKKKKKKKKKK | Pronto per il prossimo raduno, Oh YEAHHHH
|
|
|
|
|
|
|
#8 | |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
Quote:
|
|
|
|
|
|
|
#9 |
|
Member
Iscritto dal: Jan 2006
Messaggi: 135
|
Ragazzi ho trovato:
togliendo return0 alla fine e inserendo cin.get(); cin.ignore(); } compila ed esegue bene anche sotto windows. Che mi dite? |
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
|
|
|
|
|
#11 | |
|
Senior Member
Iscritto dal: Jan 2004
Messaggi: 388
|
Quote:
Quindi, sempre parlando di windows, è quasi d'obbligo usare il system("pause"), a meno che non si usino compilatori come code::blocks che quando runni il programma ti mettono in automatico la pausa alla fine.
__________________
|
|
|
|
|
|
|
#12 | ||
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
Quote:
Le applicazioni "console", quelle serie almeno, non hanno di certo l'attesa finale di un tasto.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
||
|
|
|
|
|
#13 |
|
Senior Member
Iscritto dal: Dec 2005
Messaggi: 7262
|
perchè così vuole lo standard
Ultima modifica di k0nt3 : 29-06-2011 alle 18:22. |
|
|
|
|
|
#14 | |
|
Senior Member
Iscritto dal: Jan 2004
Messaggi: 388
|
Quote:
__________________
|
|
|
|
|
|
|
#15 | |
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
|
|
|
|
|
#16 | |
|
Senior Member
Iscritto dal: Jan 2004
Messaggi: 388
|
Quote:
Se si, mi farebbe piacere sapere come
__________________
|
|
|
|
|
|
|
#17 | |
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
Esempio: Codice:
int a, b;
scanf ("%d", &a);
scanf ("%d", &b);
Soluzione: rimpiazzare scanf/fscanf con l'accoppiata fgets+sscanf. Esempio: Codice:
int a, b; fgets (s, sizeof (s), stdin); sscanf (s, "%d", &a); fgets (s, sizeof (s), stdin); sscanf (s, "%d", &b);
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
|
|
|
|
|
#18 |
|
Senior Member
Iscritto dal: Jan 2004
Messaggi: 388
|
oh cielo... quanto spreco di battitura e tempo, mi sa che è ora di cominciare a usare cin e cout
__________________
|
|
|
|
|
|
#19 |
|
Member
Iscritto dal: Jan 2006
Messaggi: 135
|
Ragazzi scusate un altro problema:
ho dei programmini banali uno è questo: #include <iostream.h> #include<conio.h> int main (){ float a,b,max; cout<<"inserire i valori di a e b"<<endl; cin>>a>>b; cout<<"a = "<<a<<" b = "<<b<<endl; if(a>b) max=a; else max=b; cout<<"valore del massimo = "<<max<<endl; getch(); return 0; } L'altro è questo : #include <iostream.h> #include<conio.h> int main(){//stampa dei numeri dispari compresi tra n e m int i,n,m; cout<<"inserire due numeri naturali con n<=m \n"<<endl; cin>>n>>m; //controllo sulla coerenza dei dati di ingresso if((n<=0) || (m<=0) || (n>m)) cout<<"dati errati\n"; else { cout<<"stampa dei numeri dispari compresi tra "<<n<<" e "<<m<<endl; //se n e' pari si parte da n+1 if(n%2 == 0) //n%2 resto della divisione n/2 i=n+1; else i=n; //fine if while(i<=m){ cout<<i<<endl; i=i+2; }//fine while }//fine else getch(); return 0; } ora grazie ai vostri consigli compilano ed eseguono anche in windows ma il fatto è che se compilo il primo quello del massimo tutte le volte che voglio lo esegue.Gli altri qualsiasi altri scritti correttamente,mi danno errore sulla prima riga dove c'è un'operazione di uscita (cout).E non esce la console di conseguenza. |
|
|
|
|
|
#20 |
|
Member
Iscritto dal: Jan 2006
Messaggi: 135
|
SU
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 18:40.




















