Partage
  • Partager sur Facebook
  • Partager sur Twitter

Aide sur une fonction

Fonction pour rendre minuscule un charatere majuscule

    12 octobre 2019 à 17:55:29

    char my_charlow(char a)                                                      
    {                                                                              
         if (a > 'A' && a < 'Z') { 
             a = a + 32;
         }
         return a;
        
    }

    Voilà mon code. Normalement, il devrait me permettre un charactère en majuscule enb minuscule. Mais là je nn'ai qu'un segfault. Besoin d'aide s'il vous plaît.

    • Partager sur Facebook
    • Partager sur Twitter
      12 octobre 2019 à 18:04:27

      Bonjour,

      Le segfault ne vient pas de ce que tu montres.
      Ton code est quai-correct. Juste un soucis pour 2 lettres majuscules non converties.

      • Partager sur Facebook
      • Partager sur Twitter

      En recherche d'emploi.

        12 octobre 2019 à 18:50:22

        char my_charlow(char a)                                                      
        {                                                                              
             if (a > 'A' && a < 'Z') { 
                 a = a + 32;
             }
             return a;
            
        }
        int main()
        {
            char test = my_charlow('Z');
            printf(test);
        
            return 0;
        }

        Voici le code complet voilà. JE ne comprends vraiment pas.

        • Partager sur Facebook
        • Partager sur Twitter
          12 octobre 2019 à 21:06:18

          Tu devrais faire afficher les warnings :

          truc.c:14:12: warning: passing argument 1 of ‘printf’ makes pointer from integer without a cast [-Wint-conversion]
               printf(test);
          

          (Le premier argument de 'printf' doit être une chaîne de caractère.)

          En tenant compte des remarques de michelbillaud et Dalfab, et en corrigeant ce que signale le warning, ça marche.

          • Partager sur Facebook
          • Partager sur Twitter
            13 octobre 2019 à 18:01:02

            Hello,

            Pourquoi +32 ? (ah oui, c'est le préfixe de la Belgique pour les appels internationaux :D)

            Sans rire, car='a'-'A'; est bien plus 'parlant'

            -
            Edité par edgarjacobs 13 octobre 2019 à 18:08:06

            • Partager sur Facebook
            • Partager sur Twitter

            On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent

              14 octobre 2019 à 13:22:03

              edgarjacobs a écrit:

              Hello,

              Pourquoi +32 ? (ah oui, c'est le préfixe de la Belgique pour les appels internationaux :D)

              Sans rire, car='a'-'A'; est bien plus 'parlant'

              -
              Edité par edgarjacobs il y a environ 19 heures


              C'est à cause de la table ascii
              • Partager sur Facebook
              • Partager sur Twitter
                14 octobre 2019 à 14:07:29

                Celle qui dit combien vaut 'a' - 'A' ?

                Au fait, tes textes, ils sont codés comment ?  Ascii (sans accents donc), UTF-8 ? Iso-latin1 ?

                Parce que bon, il faudrait aussi s'occuper de  À É etc.

                -
                Edité par michelbillaud 14 octobre 2019 à 14:10:11

                • Partager sur Facebook
                • Partager sur Twitter
                  14 octobre 2019 à 15:11:48

                  Exact, tu auras une petite surprise quand tu devras faire la minuscule de "É".

                  -
                  Edité par markand 15 octobre 2019 à 16:44:05

                  • Partager sur Facebook
                  • Partager sur Twitter

                  git is great because Linus did it, mercurial is better because he didn't.

                    14 octobre 2019 à 16:03:58

                    michelbillaud a écrit:

                    Celle qui dit combien vaut 'a' - 'A' ?

                    Au fait, tes textes, ils sont codés comment ?  Ascii (sans accents donc), UTF-8 ? Iso-latin1 ?

                    Parce que bon, il faudrait aussi s'occuper de  À É etc.

                    -
                    Edité par michelbillaud il y a environ 1 heure

                    Mes textes sont codés en Ascii... Tout court :-)

                    • Partager sur Facebook
                    • Partager sur Twitter
                      14 octobre 2019 à 16:36:53

                      JuniorMedehou a écrit:

                      michelbillaud a écrit:

                      Celle qui dit combien vaut 'a' - 'A' ?

                      Au fait, tes textes, ils sont codés comment ?  Ascii (sans accents donc), UTF-8 ? Iso-latin1 ?

                      Parce que bon, il faudrait aussi s'occuper de  À É etc.

                      -
                      Edité par michelbillaud il y a environ 1 heure

                      Mes textes sont codés en Ascii... Tout court :-)

                      "codé en ASCII..."
                          ?


                      • Partager sur Facebook
                      • Partager sur Twitter
                        15 octobre 2019 à 15:59:36

                        L'ASCII et l'UTF-8, c'est pas exactement la même chose.

                        • Partager sur Facebook
                        • Partager sur Twitter
                          15 octobre 2019 à 23:02:42

                          bonjour, je veux exécuter cette algorithme sur codeblox mais cane marche pas ?
                          Si (a<=b)
                          alors inf=a, sup=b;
                          sinon inf=b,sup=a;
                          #include <stdio.h>
                          #include <stdlib.h>
                          #include <math.h>
                          int main()
                          {
                              int a,b ;inf,sup;
                             int max;
                             int min;
                            printf("donner a=");
                             scanf("%d",&a);
                              printf("donner b=");
                              scanf("%d",&b);
                          inf=min(a,b);
                          sup=max(a,b);
                           {
                                  if (a<=b)
                                    inf=a;
                                    sup=b;
                                  else
                                      inf=b;
                                      sup=a;
                              }
                              printf("inf %d, sup %d\n", inf, sup);
                              return 0;
                          }
                          je ne trouve pas l'erreur 
                          • Partager sur Facebook
                          • Partager sur Twitter
                            16 octobre 2019 à 7:08:10

                            Est ce une erreur de compilation ? Quel est le message ?

                            Ou d'exécution ? Avec quel exemple ? 

                            • Partager sur Facebook
                            • Partager sur Twitter

                            Aide sur une fonction

                            × 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