Dichiaratori estrai c

Un dichiaratore astratto è un dichiaratore senza identificatore, essere costituito da uno o più puntatore, la matrice, o modificatori di funzione.Il modificatore del puntatore (*) è sempre preceduto l'identificatore in un dichiaratore; matrice ([]) e l'esecuzione di () i modificatori seguono l'identificatore.Conoscendo scopo, è possibile determinare se l'identificatore apparirebbe in un dichiaratore astratto e verrebbe interpretato dal dichiaratore di conseguenza.vedere Interpretazione dei dichiaratori più complessi per ulteriori informazioni ed esempi di dichiaratori complessi.Generale typedef può essere utilizzato per semplificare i dichiaratori.vedere Dichiarazioni typedef.

I dichiaratori astratti possono risultare complessa.Le parentesi in un dichiaratore astratto complesso specificano un'interpretazione particolare, esattamente così come accade per i dichiaratori complessi nelle dichiarazioni.

In questi esempi illustrati i dichiaratori astratti:

int *         // The type name for a pointer to type int:

int *[3]      // An array of three pointers to int

int (*) [5]   // A pointer to an array of five int

int *()       // A function with no parameter specification
              // returning a pointer to int

// A pointer to a function taking no arguments and 
// returning an int
 
int (*) ( void )  

// An array of an unspecified number of constant pointers to 
// functions each with one parameter that has type unsigned int 
// and an unspecified number of other parameters returning an int 
 
int (*const []) ( unsigned int, ... )

[!NOTA]

Il dichiaratore astratto costituito da un set di parentesi vuote, (), non è consentito perché è ambiguo.È impossibile per determinare se l'identificatore implicito appartiene all'interno delle parentesi (in questo caso è un tipo non modificati o prima delle parentesi (in questo caso è un tipo di funzione).

Vedere anche

Concetti

Dichiaratori e dichiarazioni delle variabili