Effacer la console?

Fermé
Mr. D@RK - 14 juil. 2010 à 21:48
 Mr. D@RK - 15 juil. 2010 à 14:23
Bonjour,

Je suis débutant en C. Avant, j'utilisais le truc de system("pause") pour effacer la console, et maintenant, je me demande comment effacer juste une partie de l'écran de la console..

Merci =)

8 réponses

fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 817
14 juil. 2010 à 22:23
Bonjour,
Ceci n'est pas une chose portable.
Néanmoins, le kernel offre ces possibilités.
De plus, oublie l'utilisation de system("") si tu veux bien programmer en C. C'est une fonction lente puisqu'elle oblige l'émulation d'une console, sans compter les allocations dynamiques.
Pour effacer la console, tu peux utiliser la fonction : FillConsoleOutputCharacter(...)
En jouant avec la taille de la console, tu pourras effacer une partie de l'écran.
Je te mets un lien qui devrait t'intéresser : https://c.developpez.com/faq/?page=Gestion-du-clavier-et-de-l-ecran-en-mode-console

Cdlt,
0
il me faut "Kernel32.lib" pour que çà marche ='( ...
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 817
14 juil. 2010 à 22:59
J'aurais plutôt dit Kernel32.dll. Quoi qu'il en soit, quel est ton IDE ?
0
peut importe d'après l'MSDN. en+, pour compiler, il me faut juste la .lib( ou .a) et pas la peine de livrer tout une dll pour une seule fonction.. pas vrai?
pour l'IDE, je travail principalement avec VC++(2008 et 2010), mais j'utilise aussi Code::Blocks pour compiler mes applications qui utilisent les sockets(car je n'ai pas libws2_32.lib.....)
et merci =)!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 817
14 juil. 2010 à 23:21
Et quand tu as utilisé les fonctions susmentionnées, tu as bien inclus l'header windows.h ?
En tout cas, si tu n'as pas Kernel32.lib, tu ne pourras pas utiliser les fonctions du kernel. Et sans utiliser les fonctions du kernel, ça va être dur de faire ce que tu veux.
0
oui... ='( dommage
t'as pas un site où trouver les .lib(ou bien les .a) ou les .dll ?
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 817
15 juil. 2010 à 08:47
T'as pas répondu à la question : "tu as bien inclus l'header windows.h ?".
Cela permettra de savoir si ton compilateur a bien les bibliothèques pour la programmation Win32.
De plus, quel est ton compilateur sous Code::Blocks ?

Je crains pouvoir t'aider davantage. Peut-être réinstaller Code::Blocks pour forcer l'installation des bibliothèques Win32.

Cdlt,
0
oui biensur que j'ai inclue le header windows.h. j'ai essayé avec gcc et visualc++ sous code::blocks ==> même réaction. Ce qu'il faut c'est les .lib pour VisualC++ (et les .a pour code::Blocks)..
0