Question

Je fais un peu de lecture, et je vois que je peux utiliser getch () pour obtenir une combinaison de touches. Ce que j'ai vu est que cela est considéré comme une mauvaise pratique, mais je l'ai vu des opinions contradictoires. Je vous écris une application console pour ma classe, et je voudrais être en mesure de déplacer un marqueur (*) autour de l'écran en fonction des touches fléchées enfoncée. Est-getch () la bonne façon d'aller à ce sujet, ou est-il une meilleure méthode pour capturer. Je veux qu'ils soient juste capable de pousser la flèche, pas besoin de pousser entrer ou quoi que ce soit. Je ne ai pas besoin du code spécifique, je veux juste savoir si je devrais éviter getch (), et si oui, quelles fonctions sont là pour ce type d'idée.

Était-ce utile?

La solution

getch() est pas une fonction standard en C ou C ++. Il a trouvé dans certains compilateurs obsolètes, comme Turbo C et il est également défini dans certaines bibliothèques couramment utilisées telles comme malédictions , mais en tout cas, il est une fonction C, pas C ++. C ++, vous devriez probablement rester à la norme C ++ E / S. Si vous ne pouvez pas faire cela pour une raison quelconque, alors allez-option la plus portable, par exemple malédictions.

Autres conseils

Vous voulez lire à partir du terminal en mode non-canonique. Utilisez tcsetattr () pour désactiver le drapeau ICANON.

Utilisez getch () si cela fonctionne. Pourquoi pas?

Sur Windows, vous pouvez utiliser PDCURSES: http://pdcurses.sourceforge.net/ , compatible avec ncurses.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top