Che cos'è un identificatore in C, C ++ e C #?

In C, C ++, C # e altri linguaggi di programmazione, un identificatore è un nome assegnato dall'utente per un elemento del programma come variabile, tipo, modello, classe, funzione o spazio dei nomi. Di solito è limitato a lettere, cifre e caratteri di sottolineatura. Alcune parole, come "nuovo", "int" e "pausa" sono parole chiave riservate e non possono essere utilizzate come identificatori. Gli identificatori vengono utilizzati per identificare un elemento di programma nel codice. 

I linguaggi del computer hanno restrizioni per i caratteri che possono apparire in un identificatore. Ad esempio, nelle prime versioni dei linguaggi C e C ++, gli identificatori erano limitati a una sequenza di una o più lettere ASCII, cifre, che potrebbero non apparire come primo carattere e caratteri di sottolineatura. Le versioni successive di queste lingue supportano quasi tutti i caratteri Unicode in un identificatore, ad eccezione dei caratteri degli spazi bianchi e degli operatori del linguaggio.

Si designa un identificatore dichiarandolo all'inizio del codice. Quindi, è possibile utilizzare quell'identificatore più avanti nel programma per fare riferimento al valore assegnato all'identificatore.

Regole per identificatori

Quando assegni un nome a un identificatore, segui queste regole stabilite:

  • Un identificatore non può essere una parola chiave C #. Le parole chiave hanno significati speciali predefiniti per il compilatore.
  • Non può avere due trattini bassi consecutivi.
  • Può essere una combinazione di numeri, lettere, connettori e caratteri Unicode.
  • Deve iniziare con una lettera dell'alfabeto o un trattino basso, non un numero.
  • Non dovrebbe includere spazi bianchi.
  • Non può contenere più di 511 caratteri.
  • Deve essere dichiarato prima di essere riferito.
  • Due identificatori non possono avere lo stesso nome.
  • Gli identificatori fanno distinzione tra maiuscole e minuscole.

Per le implementazioni dei linguaggi di programmazione compilati, gli identificatori sono spesso solo entità in fase di compilazione. Cioè, in fase di esecuzione il programma compilato contiene riferimenti a indirizzi di memoria e offset anziché i token identificativi testuali: questi indirizzi di memoria o offset sono stati assegnati dal compilatore a ciascun identificatore.

Verbatim identificatori

L'aggiunta del prefisso "@" a una parola chiave consente di utilizzare la parola chiave, che è normalmente riservata, come identificatore, che può essere utile quando si interfaccia con altri linguaggi di programmazione. @ Non è considerato parte dell'identificatore, quindi potrebbe non essere riconosciuto in alcune lingue. È un indicatore speciale per non trattare ciò che viene dopo come una parola chiave, ma piuttosto come un identificatore. Questo tipo di identificatore è chiamato identificatore testuale. L'uso di identificatori testuali è consentito ma fortemente scoraggiato come una questione di stile.