(un exemple c'est tjrs mieu)
/*fonction.c*/
int somme(int a,intb)
{
return (a+b);
}
/*fonction.h*/
int somme(int a, int b);
ça je sais que ça marche, mais ensuite:
ce que je voudrait savoir c'est si je met une macro par exemple
#define MULTI(x,y) ((x)*(y))
est-ce qu'elle doit être dans le fichier fonction.c, dans le .h ou dans les deux?
# Où tu veux!
Posté par Arnaud . Évalué à 4.
Je te conseille de préfixer ta macro, pour éviter d'aventuel conflits avec des librairies/macro systèmes.
#define MONPROJET_MULTI....
[^] # Re: Où tu veux!
Posté par Sylvain Sauvage . Évalué à 1.
# Ça dépend
Posté par Sylvain Sauvage . Évalué à 2.
Si tu ne t'en serts que dans un .c, tu la mets dans le .c (au début pour être plus visible).
Dans un .h, on ne mets que l'API, les déclarations de fonctions et de structures qui seront utilisées dans _plusieurs_ .c et .h.
[^] # Re: Ça dépend
Posté par xavier . Évalué à 1.
bref il ne faut pas se demander si telle ou telle macro, declaration, definition etc... doit se trouver dans tel ou tel fichier mais ou et a qui/quoi elle va servir, en fonction de quoi l'on peut determiner ou elle doit se trouver.
mon cent.
[^] # Re: Ça dépend
Posté par jojolapine . Évalué à 1.
et j'ai donc pour ce faire un fichier fonctions_calculette.h que j'inclu dans mon fichier calculette.c (avec aussi mon fichier menu.h, aide.h...)
c'est juste pour m'y retrouver un peu parce que c'est mine de rien pour moi débutant que je suis un gros projet...
[^] # Juste inclure le header
Posté par Poulpe404 . Évalué à 1.
/*-----calc.c-----*/
//compiler avec gcc -Wall -O2 -o calc calc.c
#include <stdio.h>
#include "calc.h"
int main()
{
printf("addition: %i\n",addition(2,5));
printf("MULTI: %i\n",MULTI(2,5));
return 0;
}
/*----fin calc.c----*/
/*----calc.h---------*/
int addition(int a, int b)
{
return a+b;
}
#define MULTI(x,y) ((x)*(y))
/*---fin calc.h------*/
[^] # Re: Ça dépend
Posté par gph . Évalué à 2.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.