|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jun 2005
Città: Napoli
Messaggi: 2599
|
[C] variabili globali in più file .c
Salve, devo fare un progetto con progetto contenente più file .c e un unico file .h. Ma ho una domanda...se devo usare una variabile globale, che deve essere vista da 2 o 3 file .c, in che file la devo mettere???
grazie
__________________
Hp pavilion dv6-1250el [cpu: P8700 - ati radeon hd 4650 1 gb - 4 gb ram - hd 320 7200 rpm!] Garmin Official Thread |
|
|
|
|
|
#2 |
|
Member
Iscritto dal: Jun 2008
Città: Verona
Messaggi: 68
|
di solito va nel main.c che richiami dagli altri file .c
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jun 2005
Città: Napoli
Messaggi: 2599
|
però cosi negli altri file .c dove devo usare la variabile globale, mi dice che non la trova...
__________________
Hp pavilion dv6-1250el [cpu: P8700 - ati radeon hd 4650 1 gb - 4 gb ram - hd 320 7200 rpm!] Garmin Official Thread |
|
|
|
|
|
#4 |
|
Member
Iscritto dal: Jun 2008
Città: Verona
Messaggi: 68
|
in che senso non la trova? quanti file hai?
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jun 2005
Città: Napoli
Messaggi: 2599
|
ho 4 file .c (tra cui il main) e un file .h
l'ho fatto..ma mi dice che c'è una dichiarazione precedente di quelle variabili...Se non la metto, negli altri file .c mi dice che quelle variabili globali non sono dichiarate
__________________
Hp pavilion dv6-1250el [cpu: P8700 - ati radeon hd 4650 1 gb - 4 gb ram - hd 320 7200 rpm!] Garmin Official Thread |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
La devi mettere in un solo file, altrimenti rischi di ridefinirla e di incappare in errori di linking. Io ti consiglierei di dedicare un sorgente appositamente a questo scopo, chiamandolo ad esempio common.c o shared.c, e poi dichiarare il tutto nel relativo header con extern.
ciao
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|
|
|
|
|
#7 | ||
|
Senior Member
Iscritto dal: Jun 2005
Città: Napoli
Messaggi: 2599
|
Quote:
Quote:
Codice:
#include "header.h" int i = 0;
__________________
Hp pavilion dv6-1250el [cpu: P8700 - ati radeon hd 4650 1 gb - 4 gb ram - hd 320 7200 rpm!] Garmin Official Thread |
||
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
Sì, una cosa del genere.
Ricorda, ovviamente, di compilare anche quel file .c e di linkarlo agli altri file oggetto.
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:57.




















