Ayuda! Problema con includes

Davinia
02 de Abril del 2004
Hola,
tengo un problema, me podeis ayudar?
Es relacionado con el error LNK2001: unresolved external symbol _myvar

Gracias por adelantado.

//mimain.cpp
#include <stdlib.h>

extern "C"{
#include "mv_example.h"
}

int main()
{
if (myvar == NULL)
myfunction(myvar);
return 1;
}


//m_example.c

#include "mv_example.h"

int myfunction(MY_STRUCT *var)
{
int a;
a=2;
return a;
}

//m_example.h

#ifndef M_EXAMPLE_H
#define M_EXAMPLE_H
typedef struct my_struct
{
int a;
int b;
} MY_STRUCT;

#endif

//mv_example.h

#include "m_example.h"

#ifdef M_MODULE_EXAMPLE

MY_STRUCT *myvar = NULL;

int myfunction(MY_STRUCT *myvar);
#else

extern MY_STRUCT *myvar;
extern int myfunction(MY_STRUCT *myvar);
#endif

Alejandro_
02 de Abril del 2004
Hola Davinia;

Me parece que en m_example.c está faltando una declaración de myvar. Prueba poniendo:

MY_STRUCT *myvar;

En mv_example.h está declarada como extern, pero no está definida en otro lado.

Alejandro