problème execution programme C sous windows

problème execution programme C sous windows - C - Programmation

Marsh Posté le 05-02-2005 à 09:22:14    

Voilà quand j'essaye d'executer un petit programme C sous windows après l'avoir compilé sans erreur avec dev-c++ le programme se lance dans une fenêtre dos tout fonctionne je l'utilise genre il me demande de taper un nombre ok ca amrche puis une autre fois ca ferme la fenêtre. Les programmes sont ecrit en C K&R sous linux les librairies utilisés sont juste stdio.h. Quel est le problème ?
 
Merci


Message édité par jack ryan le 05-02-2005 à 09:23:22
Reply

Marsh Posté le 05-02-2005 à 09:22:14   

Reply

Marsh Posté le 05-02-2005 à 11:22:59    

pas de solution ?

Reply

Marsh Posté le 05-02-2005 à 11:24:30    

si: chercher dans le forum où cette question a bien du être posée une bonne centaine de fois.

Reply

Marsh Posté le 05-02-2005 à 13:21:19    

jack ryan a écrit :

<...> dev-c++<..> ca ferme la fenêtre.<...>


Bug connu de dev-c++.
 
Avant le return du main():
 
system("pause" );


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 05-02-2005 à 14:11:48    

je ne mets jamais de return et ca marche tjrs avec gcc sous linux sinon la j'ai essayé et c'est toujours pareil il manquerait pas une autre commande au debut du programme ?

Reply

Marsh Posté le 05-02-2005 à 14:32:07    

jack ryan a écrit :

je ne mets jamais de return et ca marche tjrs avec gcc sous linux sinon la j'ai essayé et c'est toujours pareil il manquerait pas une autre commande au debut du programme ?

Alors gcc/Linux ou Dev-C++? C'est pas très clair... Poste ton code qu'on y voit clair...


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 05-02-2005 à 14:34:08    

je disais juste que compiler et executer sous linux ca amrchait parfaitement alors que sous windows avec dv-c++ ca amrchait pas mais j'ai reussi en utilisant un projet console qui inclue directement le systeme pause et là ca fonctionne.
merci

Reply

Marsh Posté le 05-02-2005 à 14:40:31    

jack ryan a écrit :

je disais juste que compiler et executer sous linux ca amrchait parfaitement  


J'ai bien parlé d'un bug de Dev-C++, non ?

Citation :


alors que sous windows avec dv-c++ ca amrchait pas mais j'ai reussi en utilisant un projet console qui inclue directement le systeme pause et là ca fonctionne.


En quoi est-ce différend de que que j'avais proposé ?


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 05-02-2005 à 15:54:49    

Emmanuel Delahaye a écrit :

Bug connu de dev-c++.
 
Avant le return du main():
 
system("pause" );


C'est pas un bug, c'est juste que Dev-Cpp exécute directement le binaire au lieu d'utiliser cmd /K (qui permet de garder la fenêtre cmd ouverte après la fin de l'exécution) [:spamafote]  
 
Si bug il y a (et bug il n'y a pas), c'est au niveau de windows pas de dev-cpp


Message édité par masklinn le 05-02-2005 à 15:58:06

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 05-02-2005 à 16:36:11    

Masklinn a écrit :

Si bug il y a (et bug il n'y a pas), c'est au niveau de windows pas de dev-cpp


 
Je crois qu'il plaisantait.

Reply

Marsh Posté le 05-02-2005 à 16:36:11   

Reply

Marsh Posté le 05-02-2005 à 16:49:16    

Masklinn a écrit :

C'est pas un bug, c'est juste que Dev-Cpp exécute directement le binaire au lieu d'utiliser cmd /K (qui permet de garder la fenêtre cmd ouverte après la fin de l'exécution) [:spamafote]  
 
Si bug il y a (et bug il n'y a pas), c'est au niveau de windows pas de dev-cpp


Nan. Dans VC++6, il n'y a pas ce problème. Les gens de Dev-C++ ne sont pas encore parvenus à le résoudre (ou n'on pas envie de le faire), mais je ne désepère pas. C'est pas bien grave, en tout cas...


Message édité par Emmanuel Delahaye le 05-02-2005 à 17:16:37

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 05-02-2005 à 17:08:58    

Non c'est pas un bug. VC++ 7 fait d'ailleurs pareil si tu le lance en Debug (F5), et si tu le lances sans debug (CTRL+F5) alors là oui une fois le programme terminé il affiche "Press any key..." pour empêcher la disparition de la fenêtre. C'est juste qu'il le lance pas bêtement comme Devcpp mais le lance via vcspawn qui lui même lance l'exe et attend qu'il se termine avant d'afficher le message.
http://forum.hardware.fr/forum2.ph [...] 0&subcat=0
http://support.microsoft.com/defau [...] N-US;99115


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le 05-02-2005 à 17:40:49    

Emmanuel Delahaye a écrit :

Nan. Dans VC++6, il n'y a pas ce problème. Les gens de Dev-C++ ne sont pas encore parvenus à le résoudre (ou n'on pas envie de le faire), mais je ne désepère pas. C'est pas bien grave, en tout cas...


Dev-Cpp lance l'exe directement (essaie de lancer ton exe depuis l'explorateur, surprise, ça fait pareil) alors que - comme le souligne HW - VC passe par vcspawn.
 
Dev-Cpp pourraient résoudre le "problème", il leur faudrait soit encapsuler l'exe (méthode Visual) soit le lancer avec cmd (et ce qui correspond sous W9x) et le flag /K qui force la fenêtre à rester active, ils considèrent apparement que c'est se faire chier pour rien et j'ai tendance à les comprendre


Message édité par masklinn le 05-02-2005 à 17:41:22

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 05-02-2005 à 18:02:48    

Masklinn a écrit :

Dev-Cpp lance l'exe directement (essaie de lancer ton exe depuis l'explorateur, surprise, ça fait pareil)


C'est normal. Toutes les applications consoles font ça. Il faut créer un .pif et regler les paramètres (Dos/Win) ... ou alors appeler via un cmd /K en NT...

Citation :


alors que - comme le souligne HW - VC passe par vcspawn.
 
Dev-Cpp pourraient résoudre le "problème", il leur faudrait soit encapsuler l'exe (méthode Visual) soit le lancer avec cmd (et ce qui correspond sous W9x) et le flag /K qui force la fenêtre à rester active, ils considèrent apparement que c'est se faire chier pour rien et j'ai tendance à les comprendre


J'appelle ça un bug, d'autres parlent de mauvaise conception ou de mauvaise spécification... Détails tout ça...


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 07-02-2005 à 03:40:03    

Emmanuel Delahaye a écrit :

Nan. Dans VC++6, il n'y a pas ce problème. Les gens de Dev-C++ ne sont pas encore parvenus à le résoudre (ou n'on pas envie de le faire), mais je ne désepère pas. C'est pas bien grave, en tout cas...


 
Dans VC++.NET (2003) ils ont du virer ce systeme parce qu'il n'y est plus... regression ?  :whistle:

Reply

Marsh Posté le 07-02-2005 à 11:58:09    

Si CTRL+F5 ça te met un msg de pause.


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le 07-02-2005 à 12:04:29    

HelloWorld a écrit :

Si CTRL+F5 ça te met un msg de pause.


 
Pendant l'execution ou au moment de cliquer sur le bouton d'execution ?
Si c'est pendant faut un timing de dingue pasque ca dure une fraction de seconde, je ne fais pas encore de gros programmes [:spamafote]

Reply

Marsh Posté le 07-02-2005 à 13:46:22    

Non, justement, au lieu de cliquer sur la fleche bleue (ce qui est équivalent à F5) faire CTRL+F5 pour le lancer, ou te rajouter le bouton "Exécuter sans débogage" dans la toolbar (point d'exclamation rouge, équivalent de CTRL+F5). Ou alors menu déboguer->Exécuter sans débogage.


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le 07-02-2005 à 20:06:55    

HelloWorld a écrit :

Non, justement, au lieu de cliquer sur la fleche bleue (ce qui est équivalent à F5) faire CTRL+F5 pour le lancer, ou te rajouter le bouton "Exécuter sans débogage" dans la toolbar (point d'exclamation rouge, équivalent de CTRL+F5). Ou alors menu déboguer->Exécuter sans débogage.


 
Ok merci bcp  ;)  j'ignorais ce détail.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed