The _Pragma preprocessing operator

The unary operator _Pragma, allows a preprocessor macro to be contained in a pragma directive.

Read syntax diagramSkip visual syntax diagram
_Pragma operator syntax

>>-_Pragma--(--"--string_literal--"--)-------------------------><

The string_literal can be prefixed with L, making it a wide-string literal.
The string literal is destringized and tokenized. The resulting sequence of tokens is processed as if it appeared in a pragma directive. For example, the following two statements are equivalent:
_Pragma ( "pack(full)" )
#pragma pack(full)