Directive (programming)

From Wikipedia, the free encyclopedia

In computer programming, the term directive is applied in a variety of ways that are similar to the term command, it is also used to describe some programming language constructs (e.g. those specifying how a compiler or assembler should process its input).

[edit] Assembly language

In assembly language, directives generally specify such information as the target platform, mark the separations between sections, and so on. For instance, the commonly seen directive "ALIGN", which inserts in the current section as many bytes as needed to preserve word-alignment, is generally referred to as a "directive", despite the fact that it does correspond to a particular construct in the generated code.

[edit] The C preprocessor

Main article: C preprocessor

In C and C++, the language supports a simple macro preprocessor. Source lines that should be handled by the preprocessor, such as #define and #include, are referred to as preprocessor directives.

Syntactic constructs similar to C's preprocessor directives, such as C#'s #region, are also typically called "directives", although in these cases there may not be any real preprocessing phase involved.

[edit] In other high-level languages

In Ada, compiler directives are called pragmas (short for "pragmatic information").

In Turbo Pascal, directives are called significant comments, because in the language grammar they follow the same syntax as comments. In Turbo Pascal, a significant comment is a comment whose first character is a dollar sign and whose second character is a letter; for example, the equivalent of C's #include "file" directive is the significant comment {$I "file"}.

In Perl, the keyword "use" can introduce a "pragma", such as use strict; or use utf8;. This construct may sometimes be referred to as a "directive".[citation needed] However, a few sources[1] use the term "Perl directive" to refer to the hashbang construct.