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

GeekAnonyme Messages postés 1 Statut Membre -  
Hxyp Messages postés 401 Date d'inscription   Statut Membre Dernière intervention   -
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   Statut Membre Dernière intervention   54
 
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