PDA

Visualizza la versione completa : Problemino con Dev C++ ^___^


Peppewt
12-05-2004, 21:44
Ciao a tutti, ho iniziato ora a intraprendere la via del linguaggio C :dott: , come compilatore ho scaricato dev c++: il problema sta nel fatto ke dopo aver scritto il programma, semplicissimo, copiato dal libro, vado su Run, immediatamente si apre e si kiude la finestra di Dos, anzich rimanere aperta in attesa.... come mai??? :dh:
Potete aiutarmi?
Ps: il programmino questo:

#include <stdio.h>

int main(void)
{
printf("from sea to shining C\n");
return 0;
}

:dh: :dh: :dh: :dh: :dh: :dh:

andrea_NET-_DSL
12-05-2004, 21:47
Originariamente inviato da Peppewt
#include <stdio.h>

int main(void)
{
printf("from sea to shining C\n");
getchar();
return 0;
}

modificalo come ho fatto io sopra.
Mettendo getchar(); si aspetta la pressione di un tasto per chiudere la finestra dos aperta dal run :)

Oppure ,in modo equivalente, puoi fare cosi':


#include <stdio.h>
#include <stdlib.h>

int main(void)
{
printf("from sea to shining C\n");
system("pause");
return 0;
}
(in quest'ultima soluzione cambia che ti stampa a video "premere un tasto per continuare..." e quando lo premi termina.
ciao :) :ciauz:

ps cmq si trattato l'argomento varie volte bastava effettuare una ricerca sul forum :fagiano: :)

Peppewt
12-05-2004, 22:12
ok... tnx... ho risolto, mi basta aggiungere #include <stdlib.h>, poi mi funziona anche con getchar().... ma come mai sto problema? :confused:
Bye e tnx tantissssssssimo...

andrea_NET-_DSL
13-05-2004, 15:34
Originariamente inviato da Peppewt
ok... tnx... ho risolto, mi basta aggiungere #include <stdlib.h>, poi mi funziona anche con getchar().... ma come mai sto problema? :confused:
Bye e tnx tantissssssssimo...
nn un problema.
Quando un programma ha eseguito le istruzioni che contiene,termina e quindi chiude la finestra di run :)

Con questa tecnica si aspetta la pressione di un tasto per continuare.(infatti puoi usare getchar() anche in altre posizioni del programma)

:) :ciauz:

Entropic666
13-05-2004, 17:09
ciao a tutti la prima volta che scrivo a questo forum e sono un p curioso di vedere bene come funziona !!

volevo precisare a PEPPEWT che la funzione getchar() non serve unicamente a non fare chiudere un programma (anche perch non nata per svolgere tale funzione), ma in genereale serve a memorizzare un carattere [uno, ricorda!] tramite immissione manuale dell'utente ; praticamente il programma non si chiude da solo soltanto perch non ha ultimato il suo compito(per l'appunto la memorizzazione di un dato).

CONSIGLIO: se vuoi una funzione che non faccia chiudere da solo il tuo programma e che nel frattempo non ti obblighi a pigiare un tasto qualunque per chiudere quando vuoi tu, usa la funzione system("PAUSE"); alla fine del programma e i tuoi problemi saranno risolti !!!! :gren: :gren: :gren: :gren: :gren: :gren:

spero di esserti sato utile, anzi ti riporto il TUO programma proprio con la funzione system("PAUSE"); !

PILLOLE DA RICORDARE :

1) la funzione system("PAUSE"); implica l'inclusione della libreria stdlib.h

2)la funzione return 0; posta prima del system("PAUSE"); fa saltare il programma e questo riotterrebbe il tuo problema, posta dopo non fa nulla; ma ricorda che in questo tuo programa non serve a niente poich non "ritorna lo zero" a NESSUNA variabile (capirai meglio una volta fatte le funzioni)

3)a) introdurre main con int praticamente inutile perch di suo default implica , scrivendo solo main, la tipologia int

3)b) riprendendo la 2) l'istruzione void di dice questo : "puoi fare tutte le operazioni e conti che vuoi, ma tanto io nobn riporto un bel niente !!": quindi in questo tuo caso inutile;


detto tutto questo ti riporto il listato riveduto e corretto !! spero di esserti sato utile !!!! ciao !!!!!


#include <stdio.h>
#include <stdlib.h>
main()
{
printf("\n\n\n\n from sea to shining C\n\n\n\n\n");
system("pause");
}

Loading