Partage
  • Partager sur Facebook
  • Partager sur Twitter

Probleme de libraire

    28 septembre 2008 à 14:51:13

    Bonjour
    J'ai un petit probleme en fait j'ai "converti" ma calculatrice ( en C ) en C++ mais j'ai un probleme avec la librairie math.h
    en effet je n'arrive pas a l'inclure
    quand je met
    #include <math>
    

    Mon IDE ( visual C++ ) me marque
    Impossible d'ouvrir le fichier include : 'math' : No such file or directory :o
    Et si je met
    #include <math.h>
    

    Il me signale diverse erreurs dans le fichier math.h o_Oo_Oo_O
    Aussi est ce que quelqu'un pourrait m'aider pour pouvoir inclure la libraire mathémathique (et ainsi pourvoir inclure des fonctions avec les puissances des sinus des cosinus et toutes ces joyeuserie de la nature... :p )
    merci d'avance
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      28 septembre 2008 à 14:56:49

      Toutes les librairie standart de C peuvent être inclusent en C++ mais leur nom porte un C devant et sans l'extension :#inlude<cmath>
      • Partager sur Facebook
      • Partager sur Twitter
        28 septembre 2008 à 15:03:29

        ok
        mais ca me marque comme quand je met
        #include <math.h>
        

        a savoir diverse erreurs dans le fichier...

        si besoin voici la liste des erreurs :
        (88) : error C2668: 'pow' : appel ambigu à une fonction surchargée
         peut être 'long double pow(long double,int)'
         ou       'float pow(float,int)'
         ou       'double pow(double,int)'
                lors de la tentative de mise en correspondance de la liste des arguments '(long, long)'

        Dsl de pas mettre exactement mais comme s'affiche les différents chemin d'emplacement de mes fichiers , je les ais enlevés
        • Partager sur Facebook
        • Partager sur Twitter
          28 septembre 2008 à 15:56:17

          Je crois que tu essaie d'elever un long à une puissance non entiere (ou au moins tu mets une variable long a la place d'un int, et il aime pas)...

          Tu peut montrer le code qui appelle pow??
          • Partager sur Facebook
          • Partager sur Twitter
            28 septembre 2008 à 16:47:10

            // fonction exposant
            void expo(long &nombre1, long &nombre2)
            {
            cout << "Le resultat de " << nombre1 << "^" << nombre2 << " est " << pow (nombre1, nombre2) << endl;
            }
            

            le voici
            les deux nombres envoyés du main sont aussi de type long
            • Partager sur Facebook
            • Partager sur Twitter
              28 septembre 2008 à 16:51:30

              Pourquoi passer par des références ?
              • Partager sur Facebook
              • Partager sur Twitter
                28 septembre 2008 à 16:55:29

                J'ai pris l'habitude
                ca change quelque chose ici?
                • Partager sur Facebook
                • Partager sur Twitter
                  28 septembre 2008 à 18:44:11

                  Citation : Petrolevb

                  J'ai pris l'habitude
                  ca change quelque chose ici?


                  Bah pour une variable de 4 octets le déférencement etc... chaud.
                  • Partager sur Facebook
                  • Partager sur Twitter
                    28 septembre 2008 à 18:55:17

                    Quoi ????
                    dsl j'ai pas compris :p
                    • Partager sur Facebook
                    • Partager sur Twitter
                      28 septembre 2008 à 19:08:06

                      Passer par référence pose plusieurs problème. Le plus évident est celui-ci:

                      Je peux pas appeler ta fonction de cette manière:

                      expo(1, 1);
                      

                      • Partager sur Facebook
                      • Partager sur Twitter
                      Co-auteur du cours de C++. ||| Posez vos questions sur le forum ||| Me contacter.
                        28 septembre 2008 à 19:24:02

                        En gros, ta fonction fait appel aux mécanismes de référencement (et dé référencement) qui ne sont pas adaptés à de si petites variables.
                        C'est limite une perte de performance (mais qui doit néanmoins rester infime, je pense).
                        Et en plus, tu ne peut pas appeler ta fonction de la façon indiquée par Nanoc...

                        A+
                        Yogou
                        • Partager sur Facebook
                        • Partager sur Twitter

                        Probleme de libraire

                        × 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