Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Problemi esecuzione di programma semplice
Forum - C/C++ - Problemi esecuzione di programma semplice

Pagine: [ 1 2 3 4 ] Precedente | Prossimo
Avatar
_shock_ (Normal User)
Newbie


Messaggi: 17
Iscritto: 11/07/2010

Segnala al moderatore
Postato alle 11:17
Martedì, 13/07/2010
Salve, ho un problema con il c++...ho scritto un esempio in dev-cpp:

Codice sorgente - presumibilmente C/C++

  1. #include <iostream.h>
  2.  
  3. int main()
  4. { cout << "Hello World!" ;
  5. }



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..:om:

Ciao e grazie in anticipo

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 5475
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 11:31
Martedì, 13/07/2010
Il codice corretto, in C++ è

Codice sorgente - presumibilmente C++

  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int main()
  6. {
  7.   cout << "Hello World!" << endl;
  8.   cin.ignore();
  9. }



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 ...
PM Quote
Avatar
HeDo (Founder Member)
Guru^2


Messaggi: 2763
Iscritto: 21/09/2007

Segnala al moderatore
Postato alle 11:32
Martedì, 13/07/2010

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++

  1. #include <iostream.h>


devi scrivere
Codice sorgente - presumibilmente C/C++

  1. #include <iostream>
  2. 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++

  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int main() {
  5.    
  6.     cout << "Ciao mondo!" << endl;
  7.  
  8.     system("PAUSE");
  9.     return 0;
  10. }



Ingegnere Informatico
https://ldlagency.it
PM Quote
Avatar
Bonny (Member)
Expert


Messaggi: 435
Iscritto: 24/04/2009

Segnala al moderatore
Postato alle 11:32
Martedì, 13/07/2010
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


Bonny
PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 5475
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 13:19
Martedì, 13/07/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 ...
PM Quote
Avatar
gigisoft (Member)
Guru


Messaggi: 695
Iscritto: 11/10/2008

Segnala al moderatore
Postato alle 17:49
Martedì, 13/07/2010
Testo quotato

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()


Le cose si fanno per bene o non si fanno affatto
PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 5475
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 21:07
Martedì, 13/07/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 ...
PM Quote
Avatar
_shock_ (Normal User)
Newbie


Messaggi: 17
Iscritto: 11/07/2010

Segnala al moderatore
Postato alle 21:41
Martedì, 13/07/2010
Ho installato Visual C++ Express....ma non riesco a capire come si compila ed esegue il codice...:-|

Ciao e grazie

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 5475
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 21:45
Martedì, 13/07/2010
Testo quotato

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 ...
PM Quote
Pagine: [ 1 2 3 4 ] Precedente | Prossimo