PDA

Visualizza la versione completa : [C] Errore linker "Multiple definition of..."


Hysoka
25-06-2011, 14:36
ciao a tutti,
ho un file header fatto in questo modo

#ifndef __VARIABILE_H__
#define __VARIABILE_H__

#include <stdbool.h>

int nVariabili=0;
char listaVariabili[53];

//aggiungo una variabile alla tabella di conversione
int aggiungiVariabile(char);

//creo un array di valori da dare alle variabili
bool* creaArrayValori(int,bool);

#endif

il problema è che il linker mi restituisce il seguente errore:
ksat.o:(.bss+0x0): multiple definition of `nVariabili'

il punto è che non capisco bene l'errore: se tolgo l'inizializzazione a zero, ovvero metto solo "int nVariabili;" tutto va, ma aggiungo "=0" mi da l'errore...
ma perché? si mettono gli header guard per questo motivo, no?
Cos'ha che non gli va a genio l'inizializzazione?

oregon
25-06-2011, 14:59
Vedi

http://forum.html.it/forum/showthread.php?threadid=1177734

Loading