Genre de menu en c
Résolu
cabon.contact
Messages postés
66
Statut
Membre
-
cabon.contact Messages postés 66 Statut Membre -
cabon.contact Messages postés 66 Statut Membre -
Bonjour,
J'aimerais créer un sorte de micro-langage de programmation à titre éducatif, c'est à dire que j'aimerais qu'en écrivant dans une console la commande suivante : <input type="text"> cela affiche, "cela créer une zone de texte".
Je pensais passer par un Switch, mais j'aimerais remplacer case 0 (case 1,case 2..) par case <input type="text"> vous pensez que c'est possible ?
Merci d'avance !
J'aimerais créer un sorte de micro-langage de programmation à titre éducatif, c'est à dire que j'aimerais qu'en écrivant dans une console la commande suivante : <input type="text"> cela affiche, "cela créer une zone de texte".
Je pensais passer par un Switch, mais j'aimerais remplacer case 0 (case 1,case 2..) par case <input type="text"> vous pensez que c'est possible ?
Merci d'avance !
A voir également:
- Genre de menu en c
- Menu déroulant excel - Guide
- Canon quick menu - Télécharger - Utilitaires
- Excel menu déroulant en cascade - Guide
- Windows 11 menu contextuel classique - Guide
- Windows 11 menu démarrer classique - Guide
3 réponses
Salut, il faut une fonction qui renvoi une valeur à partir d'une comparaison de chaines de caractères comme là:
http://www.cppfrance.com/codes/SWITCH-STRINGS-CPLUSPLUS_39135.aspx
edit: ça revient a faire des if sauf qu'ils sont dans une boucle de la fonction et qu'il n'y a qu'a toucher la façon dont on appelle la fonction en rajoutant d'autre chaines de caractère en argument
http://www.cppfrance.com/codes/SWITCH-STRINGS-CPLUSPLUS_39135.aspx
edit: ça revient a faire des if sauf qu'ils sont dans une boucle de la fonction et qu'il n'y a qu'a toucher la façon dont on appelle la fonction en rajoutant d'autre chaines de caractère en argument
fiddy
Messages postés
11653
Statut
Contributeur
1 847
string n'existe pas en C...
Non ce n'est pas possible.
Si tu souhaites créer un langage, je te conseille de passer par flex/yacc.
Sinon, faut que tu nous en dises plus sur ce que tu souahites faire. Pour comparer deux chaînes entre elle, tu peux utiliser strcmp().
Si tu souhaites créer un langage, je te conseille de passer par flex/yacc.
Sinon, faut que tu nous en dises plus sur ce que tu souahites faire. Pour comparer deux chaînes entre elle, tu peux utiliser strcmp().
Il me semblait bien,
je ne souhaite pas créer un langage mais plutôt un genre d'interpréteur interne au 'C'.
Par exemple l'utilisateur entre dans la console la commande "new.var" et cela va créer une variable.
Exemple :
const char newVar[20] = "new.var";
char input[20];
scanf("%c",&input);
if(input == newVar){
// instruction
}
J'ai été assez clair ? Merci de m'avoir répondu
je ne souhaite pas créer un langage mais plutôt un genre d'interpréteur interne au 'C'.
Par exemple l'utilisateur entre dans la console la commande "new.var" et cela va créer une variable.
Exemple :
const char newVar[20] = "new.var";
char input[20];
scanf("%c",&input);
if(input == newVar){
// instruction
}
J'ai été assez clair ? Merci de m'avoir répondu
scanf("%c",&input);
"%c", c'est pour un char pas pour une chaîne de caractères.
if(input == newVar){
Ce n'est pas == qu'on utilise pour comparer deux chaînes de caractères mais strcmp() comme dit plus haut.
Ce qui donnerait :
Le mieux serait d'utiliser fgets() (au lieu de scanf()).
"%c", c'est pour un char pas pour une chaîne de caractères.
if(input == newVar){
Ce n'est pas == qu'on utilise pour comparer deux chaînes de caractères mais strcmp() comme dit plus haut.
Ce qui donnerait :
scanf("%19s",&input);
if(strcmp(input, new.var) == 0) {
/*instruction*/
}
Le mieux serait d'utiliser fgets() (au lieu de scanf()).