Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1473 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  [C++] Petites questions

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C++] Petites questions

n°600309
Gurney_Hal​leck
dévisage des figures
Posté le 01-01-2004 à 17:58:10  profilanswer
 

Salut,
 
voilà, j'ai un projet à faire en C++, et j'ai 2 petits problèmes :
- mon programme s'exécute dans une fenêtre DOS, et j'aimerais savoir quelle est la commande qui permet d'effacer son contenu (de ravoir une fenêtre noire vierge, donc)
- j'aimerais savoir également si il y a un moyen de mettre une "pause" (dans une boucle par exemple), genre un message "appuyez sur espace pour continuer"
 
merci !

mood
Publicité
Posté le 01-01-2004 à 17:58:10  profilanswer
 

n°600310
chrisbk
-
Posté le 01-01-2004 à 18:01:20  profilanswer
 

ben si jamais ton truc ne doit tourner que sous zindozs :
 
1/ system("cls" );
2/ system("pause" );

n°600312
Gurney_Hal​leck
dévisage des figures
Posté le 01-01-2004 à 18:04:33  profilanswer
 

merci c'est exactement ça :)
 
plus que le vidage de la fenêtre. J'ai essayé clear(); à tout hasard, mais ça existe pas...

n°600314
chrisbk
-
Posté le 01-01-2004 à 18:13:04  profilanswer
 

system("cls" ) je te dis
 

n°600319
Taz
bisounours-codeur
Posté le 01-01-2004 à 18:16:06  profilanswer
 

c'est n'imp les system, tourne toi vers une vrai bibliothèque

n°600322
Gurney_Hal​leck
dévisage des figures
Posté le 01-01-2004 à 18:24:16  profilanswer
 

chrisbk a écrit :

system("cls" ) je te dis
 
 


 
lol, dsl, je croyais que c'était la même chose.
mici

n°600323
Gurney_Hal​leck
dévisage des figures
Posté le 01-01-2004 à 18:26:32  profilanswer
 

taz a écrit :

c'est n'imp les system, tourne toi vers une vrai bibliothèque


 
:/
 
je fais de la méca à la base, on a un projet d'info par an...
c'est juste pour tourner sous windows. le programme devrai faire 250-300 lignes en un seul fichier ;) je pense pas avoir besoin de trucs trop compliqués ^^

n°600324
Taz
bisounours-codeur
Posté le 01-01-2004 à 18:28:56  profilanswer
 

moi j'ai jamais compris cette phobie de l'écran, cette manie de vouloir toujours tout effacer. surtout pour des scientifiques, normalement, on veut garder des traces de tout, un programme qui n'est exploitable qu'interactivement est trop limité

n°600328
Gurney_Hal​leck
dévisage des figures
Posté le 01-01-2004 à 18:47:41  profilanswer
 

taz a écrit :

moi j'ai jamais compris cette phobie de l'écran, cette manie de vouloir toujours tout effacer. surtout pour des scientifiques, normalement, on veut garder des traces de tout, un programme qui n'est exploitable qu'interactivement est trop limité


 
boarf, c'est juste que je trouve que ça fait plus propre :)
 
en fait, je dois "simuler" un atelier (9 machines produisants 3 types de pièces, et un chariot qui charge et décharge les pièces).
on doit le faire avec un compteur, pour simuler le temps. donc à chaque incrémentation du compteur, je fais des traitement sur l'atelier.
Je veux pouvoir aficher l'état de l'atelier pas à pas, et je trouve que c'est plus propre avec un écran vierge, ça se limite à ça ;)
 
c'est un projet bidon, c'est juste pour nous donner des notions.


Message édité par Gurney_Halleck le 01-01-2004 à 18:48:15
n°600702
skynaute
Posté le 02-01-2004 à 14:32:40  profilanswer
 

chrisbk a écrit :

ben si jamais ton truc ne doit tourner que sous windows :
 
1/ system("cls" );
2/ system("pause" );


 
sous linux ca marche pas ? :/

mood
Publicité
Posté le 02-01-2004 à 14:32:40  profilanswer
 

n°600703
chrisbk
-
Posté le 02-01-2004 à 14:33:39  profilanswer
 

skynaute a écrit :


 
sous linux ca marche pas ? :/


 
system ouais, mais fo remplacer les commandes par ce qui va bien (clear pour cls par ex).
Dans l'ensemble la solution est franchement pas terrible, mais bon, ca depanne :o

n°600724
skynaute
Posté le 02-01-2004 à 15:02:42  profilanswer
 

y'a quoi d'autre de mieux ou plus pratique ?

n°600746
pascal_
Posté le 02-01-2004 à 15:30:24  profilanswer
 

tu peux le faire juste avec un printf, mais faut que je retrouve la syntaxe....
 

n°600765
pascal_
Posté le 02-01-2004 à 15:48:50  profilanswer
 

C'est ça :
 printf("\033[2j" );
Par contre, j'ai oublié que sous Windows il faut un pilote ANSI pour que ca marche (sous Unix ça marchera en standard )
Mettre device=ansi.sys dans config.sys (pas terrible non plus comme solution en fait...)
 
 

n°600876
xterminhat​e
Si vis pacem, para bellum.
Posté le 02-01-2004 à 18:28:41  profilanswer
 

Si tu veux effacer la console DOS au début de l'execution du programme et faire pause à la fin de l'exection alors tu peux le faire sans même taper une ligne de C.
 
Tu créés un fichier "lanceur.bat" avec pour contenu les 3 lignes suivantes :
cls
monprogramme.exe
pause
 
Pour executer ton programme, tu lances le fichier lanceur.bat.
 
Voila! Peut-etre une autre solution tout aussi simple.
 
Cordialement,
   Xter.


Message édité par xterminhate le 02-01-2004 à 18:29:42
n°611337
C H A V E ​Z
Quis custodiet ipsos custodes?
Posté le 14-01-2004 à 04:28:29  profilanswer
 

Code :
  1. //copyright Chavez.d
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4. #include <ctype.h>
  5. #include <errno.h>
  6. #include <windows.h>
  7. void cls (const int arriere_plan)
  8. /*------------------------------*/
  9. {
  10.     unsigned long x;
  11. COORD CO = {0, 0};
  12.     FillConsoleOutputAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
  13.             (WORD)(arriere_plan*16), 2000, CO, &x); 
  14. FillConsoleOutputCharacter(GetStdHandle(STD_OUTPUT_HANDLE),
  15.             0x20,2000,CO,&x);
  16. }


 
 
voila un ptit cls


Message édité par C H A V E Z le 14-01-2004 à 04:30:32
n°611342
red factio​n
Posté le 14-01-2004 à 06:43:54  profilanswer
 

C H A V E Z a écrit :

Code :
  1. //copyright Chavez.d
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4. #include <ctype.h>
  5. #include <errno.h>
  6. #include <windows.h>
  7. void cls (const int arriere_plan)
  8. /*------------------------------*/
  9. {
  10.     unsigned long x;
  11. COORD CO = {0, 0};
  12.     FillConsoleOutputAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
  13.             (WORD)(arriere_plan*16), 2000, CO, &x); 
  14. FillConsoleOutputCharacter(GetStdHandle(STD_OUTPUT_HANDLE),
  15.             0x20,2000,CO,&x);
  16. }


 
 
voila un ptit cls


 
ca reste proprietaire qd meme
 
le C ne definit pas lecran pour lui c juste un peripherique de sortie donc cls n'a aucun sens

n°688364
naoyfurieu​x
Posté le 31-03-2004 à 13:43:40  profilanswer
 

sinon la fonction  
clrscr();  
ca doit fonctioner sous windows non?
 
ben non en fait...
ou alors il faut une bibiotheque mais je sais pas laquelle...


Message édité par naoyfurieux le 01-04-2004 à 14:34:53

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  [C++] Petites questions

 

Sujets relatifs
Bonjour, j'ai quelques ptites questions en PHP et MySQL :oPlusieurs questions en Java
OCL et UML : 2 petites questionsQuestions simples
pleins de questions pour mon "futur" siteQuestions, simples je pense
2 questions PHP : Créer une mini-image / comment faire une redirectionLogiciel pour Developper en C++, et diverses questions.
[PHP] Questions sur auto_increment 
Plus de sujets relatifs à : [C++] Petites questions


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR