Aller au contenu
  • Pas encore inscrit ?

    Pourquoi ne pas vous inscrire ? C'est simple, rapide et gratuit.
    Pour en savoir plus, lisez Les avantages de l'inscription... et la Charte de Zébulon.
    De plus, les messages que vous postez en tant qu'invité restent invisibles tant qu'un modérateur ne les a pas validés. Inscrivez-vous, ce sera un gain de temps pour tout le monde, vous, les helpeurs et les modérateurs ! :wink:

Mémoire en c++


Ikit

Messages recommandés

OK, ben avec GMP tu pourras aussi programmer la fonction factorielle toi même bien entendu :P

 

Ensuite, si on t'apprend du C pas standard, tu deviens dépendant d'un compilateur !

 

- geninterrupt() (dos.h ?) n'est pas standard

- conio.h n'est pas un entête standard

 

Par "standard" je veux dire défini par la norme du C (hé oui : ils ne font pas partie du C !)

C'est un peu comme la librairie GMP : tu dois l'intégrer à ton compilo pour t'en servir, car elle n'existe pas à la base.

 

Donc si on t'apprend à te servir de headers qui ne sont pas standards, hé bien en effet, tu vas avoir du mal à jongler entre les différents compilos :-(

 

Donc pour commencer, jette un oeil sur la norme du C, ensuite tout ira mieux, puisque chaque compilo est censé la respecter.

(au pire achète toi un bouquin)

Modifié par leneuf22
Lien vers le commentaire
Partager sur d’autres sites

Mettre au point soi meme une bibliotheque capable de gerer de grands entiers et de pouvoir les manipuler n'est pas une chose facile !

 

Il est vrai qu'en utilisant gmp, programmer une fonction factorielle , est si simple que l'on n'a pas l'impression d'avoir fait grand chose ...

En tout cas tu n'arriveras pas a faire plus rapide et plus fiable que gmp ^^ (et oui il y a pas mal de monde qui bosse dessus depuis pas mal de temps :P)

Lien vers le commentaire
Partager sur d’autres sites

Pour utiliser gmp avec visual c++ sous windows :

 

http://www.cs.nyu.edu/exact/core/gmp/

Tu prends le pack nommé gmp static pour visual :-(

 

Tu auras besoin du fichier gmp.h que tu mettras a la source de ton projet et que tu inclueras avec #include "gmp.h"

Ensuite tu copies gmp.lib a la racine de ton projet puis pour l'inclure dans visual il faut faire :

Menu : Project -> Setting

Liste : Setting for all configuration

Onglet : Link

Champ Object Library Module : ajouter gmp.lib

 

normalement tu es pret a compiler :P

Si tu veux pouvoir utiliser gmp dans plusieurs projets tu peux copier gmp.h et gmp.lib respectivement dans les repertoires include et lib de visual C++ pour ne pas avoir a les copier a la racine de tes projets a chaque fois :-P

Lien vers le commentaire
Partager sur d’autres sites

:P merci merci ! ^^

 

j'ai quasiment toute les réponses à mes questions !

(surtout merci à Tangui) :-(

 

 

 

Plus sérieusement:

En tout cas tu n'arriveras pas a faire plus rapide et plus fiable que gmp ^^ (et oui il y a pas mal de monde qui bosse dessus depuis pas mal de temps )

Je m'en doutais ^^ ... mais c'est pas non plus ce que j'essais de faire...

 

Menu : Project -> Setting

Liste : Setting for all configuration

Onglet : Link

Champ Object Library Module : ajouter gmp.lib

Ca à l'air pas mal ici ... j'était jamais allé voir...

Mais je comprend pas tout... ya des tutos pour apprendre à utiliser visual ? (en français parceque l'aide inclus dans le logiciel ... enfin bon.

 

Si tu veux pouvoir utiliser gmp dans plusieurs projets tu peux copier gmp.h et gmp.lib respectivement dans les repertoires include et lib de visual C++ pour ne pas avoir a les copier a la racine de tes projets a chaque fois

c'est dans \Microsoft Visual Studio\VC98\Include ?

et ça veut dire que j'écrirais #include <gmp.h> au lieu de "gmp.h" c'est ça ?

 

Par "standard" je veux dire défini par la norme du C (hé oui : ils ne font pas partie du C !)

C'est un peu comme la librairie GMP : tu dois l'intégrer à ton compilo pour t'en servir, car elle n'existe pas à la base.

 

Donc si on t'apprend à te servir de headers qui ne sont pas standards, hé bien en effet, tu vas avoir du mal à jongler entre les différents compilos

Bah je viens de regarder et dos.h et conio.h sont dans C:\Program Files\Microsoft Visual Studio\VC98\Include donc ça devrais être bon pourtant ?!

Mais je pense que le problème viens plus de ma pars ... car je sais pas trop comment faire avec leur systeme de projet (où il me propose 15 type de projets différent ...) et avec ce qu'a dit bill-bob, je pense qu'il devait y avoir un pb dans les "setting" du projet...

 

vais r'garder ça :-P

 

 

et pour finir, une dernière question, comment je fait pour savoir quels fonctions sont dans tels libairies ?

j'ai essayer d'ouvrir certaines (notament gmp, math.h, conio.h ...), mais ya rien dedans ... juste des define... aucune fonction ^^, pareil pour conio.h etc ... c bizzard non ?

Modifié par Ikit
Lien vers le commentaire
Partager sur d’autres sites

c'est dans \Microsoft Visual Studio\VC98\Include ?

et ça veut dire que j'écrirais #include <gmp.h> au lieu de "gmp.h" c'est ça ?

C'est tout à fait ca :-(

 

et pour finir, une dernière question, comment je fait pour savoir quels fonctions sont dans tels libairies ?

j'ai essayer d'ouvrir certaines (notament gmp, math.h, conio.h ...), mais ya rien dedans ... juste des define... aucune fonction ^^, pareil pour conio.h etc ... c bizzard non ?

Et pourtant c'est bien dans les *.h que se trouve l'ensemble des déclarations des fonctions :-P Mais c'est souvent pas l'ideal, il vaut mieux utiliser une doc si elle existe ... :P

Lien vers le commentaire
Partager sur d’autres sites

Par "standard" je veux dire défini par la norme du C (hé oui : ils ne font pas partie du C !)

C'est un peu comme la librairie GMP : tu dois l'intégrer à ton compilo pour t'en servir, car elle n'existe pas à la base.

 

Donc si on t'apprend à te servir de headers qui ne sont pas standards, hé bien en effet, tu vas avoir du mal à jongler entre les différents compilos

Bah je viens de regarder et dos.h et conio.h sont dans C:\Program Files\Microsoft Visual Studio\VC98\Include donc ça devrais être bon pourtant ?!

Mais je pense que le problème viens plus de ma pars ... car je sais pas trop comment faire avec leur systeme de projet (où il me propose 15 type de projets différent ...) et avec ce qu'a dit bill-bob, je pense qu'il devait y avoir un pb dans les "setting" du projet...

 

vais r'garder ça :-(

 

 

et pour finir, une dernière question, comment je fait pour savoir quels fonctions sont dans tels libairies ?

j'ai essayer d'ouvrir certaines (notament gmp, math.h, conio.h ...), mais ya rien dedans ... juste des define... aucune fonction ^^, pareil pour conio.h etc ... c bizzard non ?

Je maintiens que dos.h et conio.h ne sont pas standards (donc si tu passes sous un autre compilo, gare !)

Par contre si ils sont dans le rep de VC++ là ça vient sûrement de toi :P

Peut-être que tu as aussi mis "" à la place de <> ?

 

Sinon, idem que billy-bob, dans ces .h, tu n'as aucune fonction en effet, mais il y a leur prototype (et il y en a énormément dans gmp.h, regarde un peu mieux !) ce qui te permet de les appeler dans ton programme.

 

/* Definitions for GNU multiple precision functions.  -*- mode: c -*-

 

Les fonctions, elles, sont déja compilées dans la librairie statique (gmp.lib) que tu lies à ton programme : ça t'évite de tout recompiler à chaque fois.

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.
Remarque : votre message nécessitera l’approbation d’un modérateur avant de pouvoir être visible.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

  • En ligne récemment   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
×
×
  • Créer...