Touche entrée en c
Fermé
vadim1303
Messages postés
10
Date d'inscription
samedi 11 février 2012
Statut
Membre
Dernière intervention
12 juin 2019
-
9 oct. 2016 à 11:30
[Dal] Messages postés 6198 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 13 décembre 2024 - 10 oct. 2016 à 14:18
[Dal] Messages postés 6198 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 13 décembre 2024 - 10 oct. 2016 à 14:18
A voir également:
- Touche entrée en c
- Touche rémanente - Guide
- Touche insert - Guide
- Quelle touche pour réinitialiser un ordinateur ? - Guide
- Quelle touche pour débloquer la souris ? - Guide
- Touche entrée ne fonctionne plus ✓ - Forum Clavier
2 réponses
[Dal]
Messages postés
6198
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
13 décembre 2024
1 094
10 oct. 2016 à 14:18
10 oct. 2016 à 14:18
Salut,
ncurses ou PDCurses sont bien si tu veux faire un programme portable et si ces bibliothèques sont compatibles avec la ou les plateforme(s) visées, mais cela suppose d'installer une bibliothèque et d'apprendre à l'utiliser, l'initialiser correctement, gérer les ressources, etc.
Si tu es sous Windows et que tu veux juste récupérer l'appui d'une touche, tu peux faire plus simple en utilisant _getch()
https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/getch-getwch?redirectedfrom=MSDN&view=msvc-160&viewFallbackFrom=vs-2019
en combinaison avec _kbhit(), cela te permet même de créer du code non bloquant faisant autre chose si une touche n'est pas pressée. Tu as un exemple là :
https://stackoverflow.com/questions/15603082/how-to-use-kbhit-and-getch-c-programming#answer-15603102
Autrement, toujours sous Windows, on peut utiliser l'API Windows et sa fonction ReadConsoleInput pour faire la même chose et bien plus :
https://docs.microsoft.com/en-us/windows/console/readconsoleinput?redirectedfrom=MSDN (doc)
https://docs.microsoft.com/en-us/windows/console/reading-input-buffer-events?redirectedfrom=MSDN (exemple de code)
Bien sûr, ces fonctions Windows ne sont pas portables et sont propres à Windows.
Mais pour un petit projet de simulation d'une alarme sous Windows, cela peut faire le job :-)
Si tu développes un vrai programme qui va piloter une vraie alarme, alors l'environnement d'exécution du code est crucial et va déterminer les API que tu pourras utiliser. Mais là, on n'en sait rien, car tu ne donnes pas d'infos véritablement là dessus.
Dal
ncurses ou PDCurses sont bien si tu veux faire un programme portable et si ces bibliothèques sont compatibles avec la ou les plateforme(s) visées, mais cela suppose d'installer une bibliothèque et d'apprendre à l'utiliser, l'initialiser correctement, gérer les ressources, etc.
Si tu es sous Windows et que tu veux juste récupérer l'appui d'une touche, tu peux faire plus simple en utilisant _getch()
https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/getch-getwch?redirectedfrom=MSDN&view=msvc-160&viewFallbackFrom=vs-2019
en combinaison avec _kbhit(), cela te permet même de créer du code non bloquant faisant autre chose si une touche n'est pas pressée. Tu as un exemple là :
https://stackoverflow.com/questions/15603082/how-to-use-kbhit-and-getch-c-programming#answer-15603102
Autrement, toujours sous Windows, on peut utiliser l'API Windows et sa fonction ReadConsoleInput pour faire la même chose et bien plus :
https://docs.microsoft.com/en-us/windows/console/readconsoleinput?redirectedfrom=MSDN (doc)
https://docs.microsoft.com/en-us/windows/console/reading-input-buffer-events?redirectedfrom=MSDN (exemple de code)
Bien sûr, ces fonctions Windows ne sont pas portables et sont propres à Windows.
Mais pour un petit projet de simulation d'une alarme sous Windows, cela peut faire le job :-)
Si tu développes un vrai programme qui va piloter une vraie alarme, alors l'environnement d'exécution du code est crucial et va déterminer les API que tu pourras utiliser. Mais là, on n'en sait rien, car tu ne donnes pas d'infos véritablement là dessus.
Dal
9 oct. 2016 à 18:44
10 oct. 2016 à 09:23