Identification des touches.

Identification des touches. - C - Programmation

Marsh Posté le 13-12-2004 à 13:22:06    

Bonjour a tous .
D'abord bravo pour ce forum de programmation qui est super bien fait  
Je ne suis novice en programmation est plus particulierement en language C.
Voila j'ai plusieurs questions a vous posez :
-D'abord je recherche des sites inernet qui sont capables d'expliquer le language C au debutant.
_Etant debutant j'aimerais connaitre differente fonctions en langaguage.
Chose pas facile var il me parait qu'il y en a bcp.
Alors si quelqu'un pourrait me dire ou je pourrais trouve mon bonheur se serait super sympa de sa part.
_ Je cherche une fonction permettant de reconnaitre un caractere tapé.
Par exemple si l'on tape la lettre "O" s'ouvre un fichier.
Merci d'avance à toute aide que l'on pourras m'apporté.  :hello:

Reply

Marsh Posté le 13-12-2004 à 13:22:06   

Reply

Marsh Posté le 13-12-2004 à 13:31:14    

morpilo a écrit :

Je ne suis novice en programmation est plus particulierement en language C.


Alors en français, c'est 'langage'!

Citation :


-D'abord je recherche des sites inernet qui sont capables d'expliquer le language C au debutant.


Je jette quelques bases sur mon site
 
http://mapage.noos.fr/emdel/init_c.htm
 
sinon, il existe de nombreux tutoriels sur ce site et sur www.developpez.com
 
Mais rien ne remplace un bon livre, comme le Kernighan & Ritchie édition 2 (en cours de réimpression).


---------------
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 13-12-2004 à 14:14:15    

Et comment faire pour reconnaitre des caracteres tapés ?
Par exemple si l'on tape la lettre "O" s'ouvre un fichier.
De meme pour la touche F10.
S'il vous plait aider moi ??

Reply

Marsh Posté le 13-12-2004 à 14:40:27    

morpilo a écrit :

Et comment faire pour reconnaitre des caracteres tapés ?
Par exemple si l'on tape la lettre "O" s'ouvre un fichier.
De meme pour la touche F10.
S'il vous plait aider moi ??

Pour que l'on puisse répondre il nous manque quelques informations, comme par exemple l'OS que tu utilises, le type d'application que tu développes (graphique, en mode texte :D, ...) si tu utilises une librairie comme GTK par exemple, ...


Message édité par darkoli le 13-12-2004 à 14:40:56

---------------
Le site de l'année :D (XHTML 1.0 strict) : http://darkoli.free.fr/index.html
Reply

Marsh Posté le 13-12-2004 à 14:58:06    

j'utilise comme Windows 2000,avec Borland C++.
Bon je montre un petit bout de mon programme:
#include<stdio.h>
#include<string.h>
 
//lettre taper l'utilisateur pour acceder a une interface
char lettre[1];
 
//lorsque l'utilisateur tape une touche étendue (F10 ,fléchée..)
unsigned char c;
 
void main(void)
{
  printf("------MENU JEU D'ECHEC------*\n" );
      printf("Fichier\n" );
      printf("Partie\n" );
      printf("Aide\n" );
      gets(lettre);
 
int choix_menu(lettre)
 
{
 if (lettre== char[a])
  printf("Menu d'aide" );
}
 
voila j'essaye d'etre le pus claire possible, mais comme je suis novice c'est pas facile.

Reply

Marsh Posté le 13-12-2004 à 15:13:04    

morpilo a écrit :

j'utilise comme Windows 2000,avec Borland C++.
Bon je montre un petit bout de mon programme:

Code :
  1. #include<stdio.h>
  2. #include<string.h>
  3. //lettre taper l'utilisateur pour acceder a une interface
  4. char lettre[1];
  5. //lorsque l'utilisateur tape une touche étendue (F10 ,fléchée..)
  6. unsigned char c;
  7. void main(void)
  8. {
  9.  printf("------MENU JEU D'ECHEC------*\n" );
  10.       printf("Fichier\n" );
  11.       printf("Partie\n" );
  12.       printf("Aide\n" );
  13.       gets(lettre);
  14. int choix_menu(lettre)
  15. {
  16. if (lettre== char[a])
  17.  printf("Menu d'aide" );
  18. }




Pense aux balises code : bouton [C/C++]

  • main() retourne int. Toujours.
  • Il ne faut pas utiliser gets() (c'est un bug)
  • Pour saisir une ligne (même de 1 caractère), le mieux est d'utiliser fgets() avec une chaine de 3 : (le caractère, le '\n' et le 0 final)
  • Le C n'a pas de fonction natives pour lire le clavier ou ses touches.


Chaque plateforme a ses procédures, et le compilateur dédié fourni les extensions nécéssaires. Avec Borland C en mode console, il est probable que tu ais accès à la bibliothèque conio (les fonctions sont déclarées dans <conio.h> ) et aux fonctions de lecture directe comme kbhit() et getch(). Evidemment, ça rend le code non portable sur une autre plateforme (Unix etc.)
La lecture des touches étendues se fait en 2 fois (0 + code).
 
Pseudo-code:


c := getch
SI c = 0
   SI kbhit
      c := getch
      ; code de la touche 'etendue' (fonctions, fleche etc.)
   FIN SI
SINON
   ; code ASCII d'une touche 'normale'
FIN SI


Message édité par Emmanuel Delahaye le 13-12-2004 à 15:22:35

---------------
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 13-12-2004 à 16:21:02    

Merci bcp .
Je vais etudier avec soin ta reponse ;).
Mille mercis.

Reply

Sujets relatifs:

Leave a Replay

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