Conversion chaine - entier

tenohthree Messages postés 55 Statut Membre -  
Pacorabanix Messages postés 4122 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

j'ai arrivé a séparer une chaine de caractère mais je suis coincé comment affecter 1er chaine séparé (ici cent à 100 puis quatre-vingt à 80 etc...) à une case d'une tableau.
#include <stdio.h>
#include <string.h>

int main ()
{
  char str[] ="cent quatre-vignt cinq ";
  char *p;


  
  p = strtok (str," ");
  
  while (p != NULL)
  {
    printf (" %s\n", p);
    p = strtok (NULL, " ");
  }
  return 0;
}
Configuration: Windows XP
Firefox 3.5.5

1 réponse

  1. Pacorabanix Messages postés 4122 Date d'inscription   Statut Membre Dernière intervention   663
     
    il faudrait d'abord créer un tableau.

    Ensuite, à chaque itération de la boucle, il faut créer une fonction (par ex: int chaineVersInt (char*) ) qui prend une chaine et retourne un entier. Ensuite, dans le code de cette fonction on donne des règles de conversion :

    if (strcmp(laChaine, "cent")== 0) return 100;
    if (strcmp(laChaine, "cinq")==0) return 5;
    etc...

    dans la boucle tu pourras appeler cette fonction ainsi par exemple :
    monTableauDInt[i] = chaineVersInt(p);

    où le i est une variable qui fera office de compteur dans la boucle.
    0