_shock_ (Normal User)
Newbie
Messaggi: 17
Iscritto: 11/07/2010
|
Salve, ho un problema con il c++...ho scritto un esempio in dev-cpp:
Codice sorgente - presumibilmente C/C++ |
#include <iostream.h>
int main()
{ cout << "Hello World!" ;
}
|
il problema è quando dopo averlo compilato, lo eseguo, si esegue solo per una frazione di secondo...apparendo e scomparendo subito dopo....senza permettermi di osservare il risultato.Perchè?In chat alcuni mi hanno detto che il codice è sbagliato...ma io sto seguendo una guida..
Ciao e grazie in anticipo
|
|
nessuno (Normal User)
Guru^2
Messaggi: 6403
Iscritto: 03/01/2010
|
Il codice corretto, in C++ è
Codice sorgente - presumibilmente C++ |
#include <iostream> using namespace std; int main() { cout << "Hello World!" << endl; cin.ignore(); }
|
in cui l'ultima riga serve ad attendere un tasto prima che l'applicazione si chiuda.
Con DevC++ (che è molto vecchio e che ti sconsiglio) è necessario scrivere
#include <iostream.h>
ma sappi che non è standard C++.
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità. |
|
HeDo (Founder Member)
Guru^2
Messaggi: 2765
Iscritto: 21/09/2007
|
permettimi, prima di presentarti la soluzione, di dire un paio di cose
1) Non è una buona scelta utilizzare dev-cpp, lo so che sembra semplice e carino ma in realtà è un pessimo ambiente di sviluppo, non gestisce correttamente le indentazioni, non credo abbia intellisense degna di questo nome, è stato deprecated in quanto non viene più sviluppato inoltre gli mancano veramente tante cose rispetto ad un ide decente.
per questo ti consiglio di scaricare visual c++ express http://msdn.microsoft.com/it-it/visualc/aa336402.aspx
2) Il codice in teoria è sbagliato, in quanto lo standard attuale del C++ non prevede l'esistenza dell'header iostream.h, retaggio del passato. Ma invece promuove l'utilizzo dei namespace e del conseguente header "iostream" (senza h). Ricapitolando, al posto di
Codice sorgente - presumibilmente C/C++ |
devi scrivere
Codice sorgente - presumibilmente C/C++ |
#include <iostream>
using namespace std;
|
3) La soluzione al tuo problema è semplice, devi inserire un system("PAUSE") prima del return del main. Se non c'è il return del main (visto che è sempre buona norma metterlo) mettilo:
Codice sorgente - presumibilmente C++ |
#include <iostream> using namespace std; int main() { cout << "Ciao mondo!" << endl; system("PAUSE"); return 0; }
|
|
|
Bonny (Member)
Expert
Messaggi: 437
Iscritto: 24/04/2009
|
Come ultima riga di codice inserisci :
System("PAUSE");
Cosi facendo metti in pausa la finestra.
Scusate ragazzi nn avevo visto i vostri post, perdon
Ultima modifica effettuata da Bonny il 13/07/2010 alle 11:34 |
|
nessuno (Normal User)
Guru^2
Messaggi: 6403
Iscritto: 03/01/2010
|
Sconsiglierei il
system("pause");
e tanto più il
System("pause");
quest'ultimo sicuramente sbagliato.
Solamente per una questione di "portabilità" e dato che stiamo usando il C++, è meglio un
cin.ignore();
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità. |
|
gigisoft (Member)
Guru
Messaggi: 696
Iscritto: 11/10/2008
|
Postato originariamente da nessuno:
Sconsiglierei il
system("pause");
e tanto più il
System("pause");
quest'ultimo sicuramente sbagliato.
Solamente per una questione di "portabilità" e dato che stiamo usando il C++, è meglio un
cin.ignore(); |
beh in alternativa c'e' anche la getch() |
|
nessuno (Normal User)
Guru^2
Messaggi: 6403
Iscritto: 03/01/2010
|
Sì, ma lavorando in C++ ...
E' come dire che al posto della cout poteva utilizzare la printf ...
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità. |
|
_shock_ (Normal User)
Newbie
Messaggi: 17
Iscritto: 11/07/2010
|
Ho installato Visual C++ Express....ma non riesco a capire come si compila ed esegue il codice...
Ciao e grazie
|
|
nessuno (Normal User)
Guru^2
Messaggi: 6403
Iscritto: 03/01/2010
|
Postato originariamente da _shock_:
Ho installato Visual C++ Express....ma non riesco a capire come si compila ed esegue il codice...
|
Crei un progetto, aggiungi il codice, compili ed esegui.
Se ci provi, dopo un po', ci arrivi.
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità. |
|