[bglug] Domanda C
   
    Alessandro Pasta
     
    bglug@lists.linux.it
       
    Sat, 1 Feb 2003 12:45:41 +0100
    
    
  
> - niente nomi riservati, es. for, if (alcuni linguaggi consentono certi
> tipi di identificatori riservati a tuo rischio e pericolo)
> - il primo carattere deve essere una lettera o un underscore: quindi
> niente 12ciao ma puoi fare _ciao
> - case sensitive, quindi Ciao != ciao != CIAO
> - gli identificatori possono avere una lunghezza qualsiasi ma solo i
> primi 31 caratteri sono significativi (può dipendere
> dall'implementazione ma in genere è cosi).
> - niente spazi nei nomi di variabili
tutte le regole nella definizione sono rispettate...
a parte l'underscore all'inizio del nome.
Il listato è questo:
typedef struct Automobile
{
 char CasaProduttrice[l_CasaProduttrice];
 char Modello[l_Modello];
 char Versione[l_Versione];
 char PrezzoBase[l_PrezzoBase];
 struct DotazioniSerie *DotazioniSerieTesta;
 struct DotazioniOptional *DotazioniOptionalTesta;
 struct Automobile *Next;
 int FiltroCasaProduttrice;
 int FiltroModello;
}Automobile;
typedef struct DotazioniSerie
{
 char DotazioniSerie[l_DotazioniSerie];
 struct DotazioniSerie *Next;
}DotazioniSerie;
typedef struct DotazioniOptional
{
 char DotazioniOptional[l_DotazioniOptional];
 char PrezzoDotazioniOptional[l_PrezzoDotazioniOptional];
 struct DotazioniOptional *Next;
 int FiltroOptional; //Flag di selezione per filtrare l'output (0= non
selezionato)
}DotazioniOptional;
[cut]
int main()
 Automobile *PuntatoreAuto;
 Automobile *TestaAuto=NULL;
 DotazioniSerie *PuntatoreSerie;
 DotazioniSerie *TestaSerie=NULL;
 DotazioniOptional *PuntatoreOptional;
 DotazioniOptional *TestaOptional=NULL;
Il compilatore mi dà errore sulla definizione delle variabili puntatori di
tipo Doatzioni... e non su Automobile.
L'errore è "Cant define a variable type" o qualcosa del genere (ora non
ricordo bene)
Cmq ho provato a cambiare tutte le dotazioni... in dotazion (cancellato la
i) e il compilatore non dava più problemi.
Ora secondo voi e verificata la mia ipotesi che il compilatore riconosca le
sole prime 8 lettere del nome varibile o ci sono altri problemi?
Grazie mille
Ciao
Alessandro Pasta
ales.pasta@galactica.it
"Ciao sono Pastus e reco il bastus
del sapere mio che è vastus"