Just nu i M3-nätverket
Gå till innehåll

Include..


Anders...

Rekommendera Poster

Tja jag har lite problem....

har två filer.. (hitpoint.h, object.h) som är beroende av varandra dvs när jag gör

 

#include "hitpoint.h" i object.h

och

#include "object.h" i hitpoint.h blir det problem....

 

Någon som vet hur man kan lösa detta ??

 

 

Jag kör alltså C

 

 

/Anders Jonsson

Länk till kommentar
Dela på andra webbplatser

Det är säkert större chans att du får hjälp om du beskriver vad "blir det problem" innebär.

 

Har du skrivit filerna själv?

Inkluderar de varandra?

Har du isåfall gjort vanliga #ifndef/#define/#endif för att förhindra att de läser in varandra "rekursivt".

 

Någon som vet hur man kan lösa detta ??

 

Kort sagt, det skulle hjälpa om du talade om vad "detta" är.

 

 

Länk till kommentar
Dela på andra webbplatser

Som fhe säger, preprocessordirektiv - if not defined, define this osv... (#ifndef...)

 

--

.Weyland

 

2. Everything around us can be represented and understood through numbers.

 

Länk till kommentar
Dela på andra webbplatser

In file included from bitmap.h:16,

from bitmap.c:11:

color.h:29: parse error before `bitmap'

... massor av följd fel....

 

men om man tar bort #include "bitmap.h" i color.h

och allt som har med bitmap ADTn att göra så går det bra....

 

bitmap filerna fungerar bra för övrigt, alltså om man inte inkludar filerna enligt detta...

Det blir alltså problem när de båda filerna vill komma åt information i varandra.... både color och bitmap fungerar perfekt för övrigt....

 

Här kommer filerna ... eller det viktiga i dem...

 

color.h

------------------------------------------------

#ifndef COLOR_H

#define COLOR_H

 

 

#include "bitmap.h"

 

typedef enum{PPM = 1, NOPPM = 0} colortype;

 

struct color_struct

{

colortype type;

bitmap ppm; /* DETTA ÄR RAD 16 ALLTSÅ */

/* resten av strukten e stryken.... */

};

 

typedef struct color_struct color;

 

....

 

#endif

 

bitmap.h

-------------------------------------------------

#ifndef BITMAP_H

#define BITMAP_H

 

 

#include "color.h"

 

struct bitmap_struct

{

color *colormap;

/* resten av strukten e stryken.... */

 

};

 

typedef struct bitmap_struct bitmap;

 

....

 

#endif

 

Länk till kommentar
Dela på andra webbplatser

Jag tycker det ser ut som om bitmap.h inkluderar color.h, förmodligen innan den har typedefat vad en "bitmap" är för något. Resultatet blir ju att det inte finns nån "bitmap" när du definerar structen color_struct.

 

Fast det är svårt att säga säkert.

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...