În programare, termenul „directiv” (indicație) este similar în utilizare cu termenul „ comandă ” și este, de asemenea, folosit pentru a descrie unele constructe ale limbajului de programare (adică, instrucțiuni pentru compilator sau asamblator despre caracteristicile de procesare în timpul compilării).
În limbajul de asamblare, directivele specifică informații generale, cum ar fi mediul țintă, specificarea limitelor dintre secțiuni și așa mai departe. De exemplu, directiva „ALIGN”, care inserează numărul necesar de octeți în secțiunea curentă pentru a alinia linii, adesea denumită „directivă”, contrazice faptul că se potrivește părți ale constructelor din codul generat.
Limbajele de programare C și C++ au suport încorporat pentru preprocesor. Liniile din codul sursă care trebuie procesate de preprocesor sub formă și sunt numite directive de preprocesor . #define#include
Construcțiile sintactice similare directivelor de preprocesor C, cum ar fi cele #regiondin C# , sunt adesea denumite „directive”, deși în aceste cazuri este posibil să nu existe un pas de preprocesor.
În Ada , directivele compilatorului sunt numite pragmas (prescurtare de la „informații pragmatice”).
În Pascal , directivele sunt numite comentarii pointer , deoarece sunt similare ca sintaxă cu comentariile . În Pascal, un comentariu descriptiv este un comentariu al cărui prim caracter este semnul dolarului ; de exemplu, echivalentul unei #include "file"directive de limbaj C ar fi un comentariu descriptiv {$I "file"}.
În Perl , cuvântul cheie „ use” („aplica”) poate fi folosit ca „pragma”, cum ar fi use strict;sau use utf8;. Un astfel de construct poate fi uneori denumit „directiv”. Cu toate acestea, unele surse [1] folosesc termenul „directive Perl” pentru a se referi la constructele de tip shebang .
Haskell are propriul set de pragmate. Ele vă permit să includeți extensii de limbă, opțiuni de compilare de trecere și există, de asemenea, pragmate speciale. De exemplu {-# INLINE #-}, {-# NOINLINE #-}ele indică compilatorului că este necesar/nu este necesar să inline o funcție (analog cu un cuvânt cheie inlineîn C). {-# UNBOXED #-} vă permite să stocați date fără cheltuieli generale (eficiența memoriei în detrimentul flexibilității). {-# SPECIALIZE #-}folosit pentru a depăși reprezentanții speciali ai unei clase de tip în situații excepționale. Există, de asemenea, extensii HPP - propriul preprocesor Haskell și CPP (C PreProcessor) - care apelează preprocesorul C.