Guidelor
Messages postés236Date d'inscriptionjeudi 31 octobre 2002StatutMembreDernière intervention18 août 2006
-
4 févr. 2004 à 21:38
cs_djl
Messages postés3011Date d'inscriptionjeudi 26 septembre 2002StatutMembreDernière intervention27 novembre 2004
-
18 mai 2004 à 21:50
Bonjour
Chaque fois que je lance un prog qui se finit par
....
int main ()
{
.....
printf("Je sais pas koi");
return 0;
}
eh bien je n'ai pas le temps de voir le "Je sais pas koi" vu que la console se ferme ... COmment y remerdier ?
D'avance merci !
Guidelor
Messages postés236Date d'inscriptionjeudi 31 octobre 2002StatutMembreDernière intervention18 août 2006 4 févr. 2004 à 22:16
ouais ou getch()
mais ca ve dire que je dois chaque fois rajouter l'include <conio.h>
et pour la reponse de Chouchou , quand je mets ca , je crois que le message sui s'affiche remplace ce kil y avait deja avant, nan ?
Mais vous aussi c pareil que moi ? ou c moi qui suis anormal :) ?
:: Guidelor ::
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 8 févr. 2004 à 00:00
system("pause") est très bien pour ca, et il ne remplace rien à l'écran, les trucs comme getch ou getchar c'est pas super car le comportement dépend de l'état des entrées, si elle n'est pas vide t'as l'air malin avec ca
anarchysniper
Messages postés65Date d'inscriptionjeudi 28 août 2003StatutMembreDernière intervention29 septembre 20051 18 mai 2004 à 14:20
Ou dans la catégorie "méthodes barbares" il y a :
int i = 0 ;
while(i != 1)
{
}
Son seul "petit" inconvénient est d'utiliser 99% des ressources du processeur (boucle infinie ;-)). Ma préférence va décidément à system("pause") !!!
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 18 mai 2004 à 16:20
ta méthode ne correspond pas au problème posé, puisque la le programme ne se termine jamais
par ailleurs tu pourrais remplacer nt i = 0 ; while(i != 1) par while(true)
anarchysniper
Messages postés65Date d'inscriptionjeudi 28 août 2003StatutMembreDernière intervention29 septembre 20051 18 mai 2004 à 16:34
C'est exact que ma méthode ne permet pas au programme de se terminer mais, ne nous trompons pas, system("pause"), comme le dit son nom, non plus. Il suffit, pour s'en convaincre, avec iostream.h, d'essayer :
system("pause") ;
cout << "Le Programme est toujours en cours" ;
system("pause") ;
C'est seulement parceque la fonction main se termine que le programme se ferme.
Si le but est de terminer réellement le programme sans que la console se ferme, la seule solution que je connaisse est d'ouvrir la console (on peut, dans les paramètres d'un raccourci vers cmd.exe, définir le chemin à l'ouverture c'est plus facile si on doit reproduire l'opération) et de tapper manuellement la commande du programme. Ainsi, le programme sera terminé et on pourra observer les sorties.
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 18 mai 2004 à 16:43
evidemment que system("PAUSE") ne quitte pas le programme, ne n'ai jamais dit ca, mais tu dois bien avouer que ta solution était quand même un peu spéciale
anarchysniper
Messages postés65Date d'inscriptionjeudi 28 août 2003StatutMembreDernière intervention29 septembre 20051 18 mai 2004 à 16:48
Oui c'est vrai que faire une boucle infinie puis forcer le programme à se terminer avec CTRL+C est très loin d'être académique et je ne me permettrais jamais de mettre cela dans la version finale d'une de mes application mais pour faire des tests c'est simple et flexible (pas besoin de header) :-).
anarchysniper
Messages postés65Date d'inscriptionjeudi 28 août 2003StatutMembreDernière intervention29 septembre 20051 18 mai 2004 à 20:01
Premièrement, cette question a déjà été posée et vecchio y a répondu : getchar dépend des entrée (comme cin de iostream) et leur comportement est souvent un peu spécial. Par exemple, si elle n'est pas vide, getchar utilisera ce caractère et le programme se fermera.
Deuxièmement, getchar a bien besoin d'un header, à savoir stdio.h.