C Languagevincoli


Osservazioni

I vincoli sono un termine usato in tutte le specifiche C esistenti (recentemente ISO-IEC 9899-2011). Sono una delle tre parti del linguaggio descritte nella clausola 6 dello standard (lungo la sintassi laterale e la semantica).

ISO-IEC 9899-2011 definisce un vincolo come:

restrizione, sintattica o semantica, mediante la quale l'esposizione degli elementi linguistici deve essere interpretata

(Si noti inoltre, in termini di standard C, un "vincolo di runtime" non è un tipo di vincolo e ha regole estensivamente diverse.)

In altre parole, un vincolo descrive una regola della lingua che renderebbe illegale un programma altrimenti sintatticamente valido. Sotto questo aspetto i vincoli sono in qualche modo come un comportamento non definito, qualsiasi programma che non li segue non è definito in termini di linguaggio C.

I vincoli d'altra parte hanno una differenza molto significativa rispetto ai comportamenti non definiti. Vale a dire che è necessaria un'implementazione per fornire un messaggio diagnostico durante la fase di traduzione (parte della compilazione) se un vincolo viene violato, questo messaggio potrebbe essere un avvertimento o potrebbe interrompere la compilazione.

vincoli Esempi correlati