IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

construire une bibliothèque en c


Sujet :

C

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2018
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2018
    Messages : 1
    Points : 2
    Points
    2
    Par défaut construire une bibliothèque en c
    Bonjour à tous,
    je commence à programmer en C, ça fait environ 1 mois.
    Je voudrais savoir la manière comment puis-je construire une bibliothèque en langage C.
    Merci.

  2. #2
    Expert éminent sénior
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : Mai 2010
    Messages : 3 225
    Points : 10 174
    Points
    10 174
    Par défaut
    Une bibliothèque en c , c'est qu'un ensemble de fonction , il faut juste que le compilateur compile un .lib grosso modo.

    Néanmoins si tu code que depuis un mois , tu devrais oublier cette idée , tu n'as pas encore le bagage et l’expérience nécessaire pour faire une lib correct.

  3. #3
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 897
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 897
    Points : 219 643
    Points
    219 643
    Billets dans le blog
    125
    Par défaut
    Bonjour,

    Une bibliothèque, ce n'est qu'un ensemble de fonction, compilées et du coup, sans main(). Du coup, il vous suffit de créer cet ensemble de fonctions, de bien faire les en-têtes (.h) pour permettre aux utilisateurs de la bibliothèque d'utiliser votre bibliothèque (afin que leur compilateur sache quelles fonctions sont disponibles) et surtout, de configurer votre EDI pour qu'il compile cela sous la forme d'une bibliothèque (car un programme doit obligatoirement avoir un main() (précisément : un point d'entrée) mais pas une bibliothèque).

  4. #4
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 721
    Points : 31 044
    Points
    31 044
    Billets dans le blog
    1
    Par défaut
    Bonjour

    Voici un petit exemple de bibliothèque qui offre une fonction "carre" et "cube"
    1) fichier "carre.c"
    Code c : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    #include <stdio.h>
    unsigned long carre(short nb) {
    	return((long)nb * nb);
    }

    2) fichier "cube.c"
    Code c : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    #include <stdio.h>
    long cube(short nb) {
    	return((long)nb * nb * nb);
    }

    3) création de la librairie
    Code c : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    gcc -c carrre.c
    gcc -c cube.c
    gcc -shared carre.o cube.o -o math.so

    4) le header "math.h" à inclure par ceux qui utiliseront ta librairie
    Code c : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    #ifndef __math_h_
    #define __math_h_
    unsigned long carre(short);
    long cube(short);
     
    #endif //__math_h_

    5) le programme "prog.c" qui va utiliser ta librairie
    Code c : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    #include <stdio.h>
    #include <math.h>
     
    main() {
    	printf("Carré de 2 = %lu\n", carre(2));
    	printf("Cube de 3 = %ld\n", cube(3));
    }

    6) compilation du programme avec la librairie
    Code c : Sélectionner tout - Visualiser dans une fenêtre à part
    gcc prog.c math.so -o prog

Discussions similaires

  1. Construire une bibliothèque à partir d'un projet
    Par dj_the_kid dans le forum Outils
    Réponses: 4
    Dernier message: 22/10/2011, 12h50
  2. Installation d'une bibliothèque
    Par Empty_body dans le forum JBuilder
    Réponses: 3
    Dernier message: 09/02/2006, 19h43
  3. Réponses: 19
    Dernier message: 26/04/2004, 08h54
  4. [MIB] Questions pour construire une mib
    Par fadoua dans le forum Développement
    Réponses: 4
    Dernier message: 11/03/2004, 10h47
  5. Difficulté à construire une requête
    Par coolcpu dans le forum Langage SQL
    Réponses: 6
    Dernier message: 08/10/2003, 00h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo