Problème de compilation

boualiasma Messages postés 393 Date d'inscription lundi 22 juin 2009 Statut Membre Dernière intervention 23 décembre 2011 - 28 mars 2010 à 10:09
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 - 29 mars 2010 à 22:32
Bonjour,

J'ai un programme codé en c sous Microsoft Visual C++ 6.0 qui compile et s'éxecute bien.
J'ai essayé de compiler ce programme avec Dev-C++ 4.9.9.9 alors beaucoup des erreurs.
ces erreurs se situent dans les fichiers inclus "*.h"

le programme principal qui contient le "main" et les modules "*.h":

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

#include "cxt.h"

int main()
{
.............
.............
}


Les modules "*.h" ne contiennet pas de "main" seulment des fonctions.


Je voulais modifier un peu le code et le recompiler de nouveau avec Dev-C++.
Mais, la compilation ne se passe pas bien même avant de faire la modification.

Avez vous une solution ?


Merci.

2 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
28 mars 2010 à 10:39
Un .h ne doit jamais contenir de fonctions mais seulement les protos.

ciao...
BruNews, MVP VC++
0
cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
29 mars 2010 à 22:32
(Pour compléter la réponse de BruNews)
Crée des fichiers sources séparés. Pour chacun de ces fichiers, crée un fichier .h qui contiendra les prototypes, typedefs et structures relatifs à ce morceau de code.

Exemple :

repcrt.h
#pragma once

typedef struct _repcrt_coord
{
  double x;
  double y;
} repcrt_coord;

typedef struct _repcrt_segment
{
  repcrt_coord p1;
  repcrt_coord p2;
} repcrt_segment;

double       repcrt_longueurSegment (repcrt_segment seg);
repcrt_coord repcrt_milieuSegment   (repcrt_segment seg);


repcrt.c
#include <math.h>
#include "repcrt.h"

double repcrt_longueurSegment (repcrt_segment seg)
{
  return sqrt(pow(seg.p1.x-seg.p2.x,2)+pow(seg.p1.y-seg.p2.y,2));
}

repcrt_coord repcrt_milieuSegment (repcrt_segment seg)
{
  repcrt_coord ret;
  ret.x = (seg.p1.x+seg.p2.x)/2;
  ret.y = (seg.p1.y+seg.p2.y)/2;
  return ret;
}

---
VB.NET is good ... VB6 is better
0
Rejoignez-nous