Partage
  • Partager sur Facebook
  • Partager sur Twitter

passe d une chaine de char a un long??

??

    17 juin 2006 à 17:19:42

    hello a tous

    alor j ai suivit tout le cours de m@teo21 et maintenant que j ai quelque base avec la sdl je voudrais refaire le premier TP ( plus ou moin) en mod grapfique donc.mais je n y arrive pas.

    alor mon probleme est le suivant

    je voudrait que lorsque l utilisateur tapa un nombre celui-ci s' affiche a l ecran. et ensuite pouvoire utiliser se nombre et le comparer un autre pour voir si il est plus petit, plus grand, ou egal. o_O

    bon alor j' ai reussi a faire afficher le nombre a l ecran. mais j utilise une chaine de char pour cela. parce que de 1 je n arrive pas a afficher un long ou une chaine de long avec la sdl. tres tordu.
    mais pour pouvoir comparer le nombre entré avec le nombre enregister et savoir si <> ou = il me faut 2 long.

    il me faudrait donc un moyen pour avoir 2 long.
    je n arrive pas a changer une chine de char en un seulm long. surment possible mais comment?

    ou bien , y a t il un autre moyen?

    donc je reexplike en clair ce ke je veux

    dans ma fenetre je veux ke lorske l on entre un chiffre il s affiche et que ensuite le 2eme chiffre ke l on entre s affiche juste a coté.(reussi avec la chaine de char). ensuite je veux utiliser le nombre (donc la suite de chiffre entré) comme un long. voila

    merci
    hesite pas a poser des kestion si vous avez pas compris paske je pense ke c po tres clair.
    a+
    • Partager sur Facebook
    • Partager sur Twitter
      17 juin 2006 à 17:22:47

      Avec la fonction atol

      long atol(const char *s)

      Ou alors peut etre avec sscanf
      • Partager sur Facebook
      • Partager sur Twitter
        17 juin 2006 à 17:31:37

        merci mais je n arrive pas a les utiliser

        coment dois-je m y prendre??
        • Partager sur Facebook
        • Partager sur Twitter
          17 juin 2006 à 17:37:50

          Je sais pas moi regarder dans la FAQ ?


          #include <stdio.h>
          #include <stdlib.h>

          int main(void)
          {
               char nombre[5] = "100";
               long nombreConvert = atol(nombre);
               if (nombreConvert > 200)
               {
                    printf("Cest supperieur\n");
               }
               else
               {
                    printf("Cest infferieur\n");
               }
               getchar();
               return 0;
          }



          Ou alors deuxieme solution qui je pense est valide aussi


          #include <stdio.h>
          #include <stdlib.h>

          int main(void)
          {
               char nombre[5] = "100";
               long nombreConvert = 0;
               sscanf(nombre,"%ld",&nombreConvert);
               if (nombreConvert > 200)
               {
                    printf("Cest supperieur\n");
               }
               else
               {
                    printf("Cest infferieur\n");
               }
               getchar();
               return 0;
          }
          • Partager sur Facebook
          • Partager sur Twitter
            17 juin 2006 à 17:47:11

            merci bcp ca fonctionne
            • Partager sur Facebook
            • Partager sur Twitter

            passe d une chaine de char a un long??

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown