Pragmi condizionali

AVVISO

AVVISO
AVVISO
AVVISO

AVVISO

AVVISO

Si usano pragmi condizionali nelle implementazioni dei POU ST. CODESYS non valuta questi pragmi condizionali quando li si usa nella parte di dichiarazione.

Lo scopo dei pragmi condizionali è quello di influenzare il modo in cui il codice viene generato nel processo di precompilazione o compilazione. Il linguaggio di implementazione ST supporta questi pragmi.

Con i pragmi condizionali, si può influenzare se il codice di implementazione viene preso in considerazione o meno per la compilazione. Ad esempio, si può far dipendere l'operazione dalla dichiarazione di una specifica variabile, dall'esistenza di un POU specifico, ecc.

Pragma

Descrizione

‎{define <identifier> <string>}‎

Il valore può essere interrogato e confrontato successivamente con ‎hasvalue‎.

‎{undefine <identifier>}‎

La dichiarazione ‎{define}‎ dell'identificatore ‎<identifier>‎ viene rimossa e l'identificatore torna a essere "non definito". Il pragma viene ignorato quando l'identificatore specificato non è definito.

‎{IF <expr>}...‎

‎{ELSIF <expr>}...‎

‎{ELSE}...‎

‎END_IF}‎

Questi sono pragmi per la compilazione condizionale.

Le espressioni specificate ‎<expr>‎ devono essere costanti in fase di compilazione. Vengono valutate nell'ordine in cui appaiono, finché una delle espressioni non ha un valore diverso da zero. Il testo collegato alla dichiarazione viene compilato. Le altre righe vengono ignorate. L'ordine dei segmenti è fisso. I segmenti ‎ELSIF‎ e ‎ELSE‎ sono opzionali. I segmenti di ‎ELSIF‎ possono verificarsi un numero qualsiasi di volte. È possibile utilizzare più operatori di compilazione condizionale all'interno delle costanti ‎<expr>‎.

‎<expr>‎

È possibile utilizzare uno o più operatori all'interno dell'espressione costante ‎<expr>‎ all'interno del pragma di compilazione condizionale ‎{IF}‎ o ‎{ELSIF}‎.

È possibile specificare espressioni e ‎define‎ definizioni come «definizioni del compilatore» nella scheda «Build» della finestra di dialogo Properties dei POU. Se si specificano le definizioni di ‎define‎ nella finestra di dialogo delle proprietà, è necessario omettere il termine ‎{define}‎, a differenza della definizione nel codice di implementazione. Inoltre, è possibile specificare più definizioni di ‎define‎ separate da virgole nella finestra di dialogo delle proprietà.