Les types en C

Bonjour,
je travaille à partir d'un fichier texte
dans ce fichier texte il y a 2 gros elements, les valeurs et les types des variables
le problème est que les types changent tout le temps
Ca peut être des entiers, des reels, des booléens, tout quoi

Je me demande comment aller chercher ces valeurs alors que je dois faire des calculs dessus
comment faire pour dire là c'est un entier donc je dois mettre la valeur dans un entier

je sais pas si vous me comprennez
Configuration: Windows XP
Internet Explorer 7.0

10 réponses

  • Votes
  • Date
  • Date décroissante
  1. Salut. Vu la structure du fichier, je te conseille ça.

    Tu récupère le type de la variable en le lisant, puis dans le traitement de la valeur tu fais un test sur ça.

    string type = //et tu récupères le type.
    if (type == "int")
    //traitement pour un entier.
    if (type == "bool")
    //traitement pour un booleen.

    etc...

    Tu peux aussi faire un switch case pour tester le type, plus propre que plein de if..

    Voila j'espère que t'as pigé.
    1. Bonjour

      le problème est que les types changent tout le temps
      Ils changent complètement au hasard ou suivant une règle connue ?
      Peux-tu donner un extrait du fichier en question pour que nous puissions nous faire une idée
      1. ben le fichier est du genre

        commentaire

        vitesse 132.4 reel ...
        bpmarche true booleen ...
        temperature 120 entier

        les variables sont dans le désordre c'est bien ca le problème
        j'ai pensé à faire une structure

        struct Variable {
        ? val;
        char* type;
        char* com;
        };

        mais il risque d'y avoir un problème pour la trancription du fichier dans les variables
        1. j'ai oublié un truc
          je dois absolument utilisé un pointeur de structure pour faire ca
          j'en aurais besoin plus tard
          1. j'ai pensé à utiliser des floats mais y'a des problèmes de trancriptions après
            1. Et ce que je t'ai dis, ça marche pas ?
              C'est trop simple je trouve. Tu fais ton traitement selon le type que t'as lu.
              1. justement j'ai fait un truc comme ca et j'ai tout mis dans des float
                mais comme je l'ai dis avant
                je dois faire un tableau de structure pour faire ca
                bien compliqué

                en fait pour être plus clair
                dans la mémoire tout les pointeurs de variables doivent être les uns après les autres
                donc déjà c'est un tableau après faut enregistrer les valeurs des variables,leurs commentaires et leurs types
                c'est bien pour ca que je pense à des structures

                si quelqu'un a une autre idée, qu'il me la donne parce que je vois que ca
                1. Je comprends pas pourquoi ça te parait si compliqué. Et y'a pas besoin de strucures..

                  En fait tu fais un algo du style :

                  Pour chaque ligne lue, faire
                  string var = //premier élément lu (nom de la variable)
                  string valeur = //deuxième élément lu (valeur)
                  string type = //troisième élément lu (type)

                  //et là tu testes le type
                  if (type == "booleen")
                  bool b1 = //relecture du deuxième élément
                  if(....
                  .....

                  Et tu passes à la ligne suivante.
                  1. je crois que tu n'as pas compris ce que je veux faire

                    ben comment faire pour pouvoir pointer sur mon element variable si je fais comme tu dis

                    ce que je veux faire ca serait plutot une initialisation des variables
                    c'est ce que je suis en train de faire

                    et après dans le programme je dois faire
                    si tel variable est plus grande ou plus petite que
                    ou si tel variable est à cette état je fais ca

                    en fait je veux utiliser des pointeurs pour pouvoir changer les valeurs des variables dans un autre programme et ce,directement dans la mémoire et pas à partir du fichier c'est bien ca le problème et c'est pour ca que j'utilise un tableau de structure