Fonction de saisie en language C (debutant)
Help!
-
help -
help -
Bonjour,
je cherche une fonction de saisi de commande. la commande peut prendre 3 formes:
exemple de commande:
commande:r 1 2 (separation des caracteres par un espace)
commande:t 5
commande:h
Je dois pouvoir recuperer les valeurs entrées par l'utilisateur.La premiere commande est une lettre.La commande peut comporter 1 caractere ou 1 caractere et 1 entier ou 1 caractere et 2 entiers.
Quelle solution ???
je cherche une fonction de saisi de commande. la commande peut prendre 3 formes:
exemple de commande:
commande:r 1 2 (separation des caracteres par un espace)
commande:t 5
commande:h
Je dois pouvoir recuperer les valeurs entrées par l'utilisateur.La premiere commande est une lettre.La commande peut comporter 1 caractere ou 1 caractere et 1 entier ou 1 caractere et 2 entiers.
Quelle solution ???
Configuration: Windows XP Internet Explorer 7.0
4 réponses
-
Re,
#include <stdio.h> int main(){ char buf[7]; fgets(buf,7,stdin); int a,b; char commande; switch(strlen(buf)){ case 2: commande=buf[0]; break; case 4: commande=buf[0]; a=buf[2]-'0'; break; case 6: commande=buf[0]; a=buf[2]-'0'; b=buf[4]-'0'; break; default: puts("choix incorrect"); } return 0; }
Voilou, j'espère que tu sauras tirer parti de cet exemple ;)
Cdt -
Salut,
Tu peux utiliser fgets(...) et ensuite fonction de la longueur de la chaine stockée dans fgets tu en déduis si tu dois utiliser
fscanf("%c %d %d",...) ou les autres.
Si, tu connais pas ces commandes, n'hésite pas à le dire, je serai plus précis ;). En tout cas, tu es en possession de l'idée lol
Cdt -
je connais pa tro,
Est ce que tu peux me donner les qq lignes de code (fscanf ou fgets).
Merci d'avance -