Ajouter une librairie utilisateur à un programme C sous Visual Studio 2008

Signaler
Messages postés
393
Date d'inscription
lundi 22 juin 2009
Statut
Membre
Dernière intervention
23 décembre 2011
-
Messages postés
393
Date d'inscription
lundi 22 juin 2009
Statut
Membre
Dernière intervention
23 décembre 2011
-
Salut,
on peut implémenter des fonctions dans header par exemple calcul.h qui implémente les fonctions somme, multiplication.

Dans mon programme main.c, j'inclus le header avec #include "calcul.h"

puis j'appelle par calcul();


c'est possible?

par exemple:

calcul.h :

#include<conio.h>
#include<stdio.h>

int somme( int a, int b)
{
int c
c = a+b;
return (c);
}

int multiplication( int a, int b)

{

int c

c = a*b;

return (c);

}

void calcul()
{
int a,b, c,d;
scanf("%d,%d",a,b),
c=somme(a,b);
d= multiplication(a,b);
printf("%d %d",c,d);
getch();
return(0);
}

main.c

#include<conio.h>
#include<stdio.h>
#include "calcul.h"

void main()
{
printf("le calcul commence\n");
calcul();
printf("fin de calcul \n");
getch();
return(0);
}

3 réponses

Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Statut
Membre
Dernière intervention
30 juin 2013
14
Il ne faut jamais mettre de code dans un header ...
Le code se met dans un fichier .c

Voilà ton code, normalement fonctionnel :

Fichier calcul.h

#ifndef __CALCUL_H
#define __CALCUL_H

int somme(int a, int b);
int multiplication(int a, int b);
void calcul();

#endif //__CALCUL_H

Fichier calcul.c

#include <conio.h>
#include <stdio.h>
#include "calcul.h"

int somme(int a, int b) {return a+b;}
int multiplication(int a, int b) {return a*b;}

void calcul()
{
    int a,b, c,d;
    scanf("%d,%d",a,b),
    c=somme(a,b);
    d= multiplication(a,b);
    printf("%d %d",c,d);
    getch();
    return 0;
}

Fichier main.c

#include <conio.h>
#include <stdio.h>
#include "calcul.h"

void main()
{
    printf("le calcul commence\n");
    calcul();
    printf("fin de calcul \n");
    getch();
    return 0;
}

Pour le compiler, si t'es sous gcc, il te suffit de faire :
gcc -wall -o calcul.o calcul.c
gcc -wall -o main.o main.c
gcc -o calcul.exe calcul.o main.o
Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Statut
Membre
Dernière intervention
30 juin 2013
14
Et si t'es sous VC++, il te suffit de mettre tous les fichiers que je t'ai passés dans le projet.
Messages postés
393
Date d'inscription
lundi 22 juin 2009
Statut
Membre
Dernière intervention
23 décembre 2011
5
Salut,

J'ai copié ces programmes exactement comme vous avez fait.

Mais, après l'exécution j'aurais ce message:

le calcul commence puis une boite de dialogue s'affiche:

Debug error:

Program: c:\calcul\Debug\calcul.exe

Module:  c:\calcu\\Debug\calcul.exe

File:

Run-Time check Failure #3 the variable 'b' is being used without beign inialized

(press any Retry to debug the appilcation)

Abondonner  Recommencer  Ignorer