Extraire une chaine de caractère entre "[ ]"

Fermé
GeekAnonyme Messages postés 1 Date d'inscription samedi 26 novembre 2011 Statut Membre Dernière intervention 26 novembre 2011 - 26 nov. 2011 à 11:34
Hxyp Messages postés 401 Date d'inscription vendredi 28 janvier 2011 Statut Membre Dernière intervention 27 avril 2014 - 26 nov. 2011 à 22:06
Bonjour,

Je suis actuellement sur un programme de gestion d'élèves en langage C.

Il se trouve que l'utilisateur doit rentrer ses ordres en ligne de commande :

exemple : " ajouter nom prenom classe [ note ] "

sachant que l'entrée de la note est facultative. Mon problème est le suivant :

comment extraire la note ( qui sera donc une chaine de caractères ) des crochets puis la convertir en float ?

J'ai jusqu'ici utilisé la fonction strtok () , mais la je bloque car je n'arrive pas à savoir comment détecter le " ] " et extraire ce qu'il y a avant !

Existe-t-il une fonction magique qui peut faire ça ?


Merci par avance de votre aide !



A voir également:

1 réponse

Hxyp Messages postés 401 Date d'inscription vendredi 28 janvier 2011 Statut Membre Dernière intervention 27 avril 2014 54
Modifié par Hxyp le 26/11/2011 à 22:06
Bonjour, faites une boucle sur la chaine et utiliser une condition,
for(i=0;chaine[i];i++) if(chaine[i]==']') { faire quelque chose }
une fois la valeur isolée vous pouvez utiliser strtod pour convertir en double
0