ciao a tutti,
ho un file header fatto in questo modo
il problema è che il linker mi restituisce il seguente errore:codice:#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
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?