pop_macro pragma

Sets the value of the macro-name macro to the value on the top of the stack for this macro.

Syntax

#pragma pop_macro( "macro-name" )

Remarks

A push_macro for macro-name must be issued before you can do a pop_macro.

Example

// pragma_directives_pop_macro.cpp
// compile with: /W1
#include <stdio.h>
#define X 1
#define Y 2

int main() {
   printf("%d",X);
   printf("\n%d",Y);
   #define Y 3   // C4005
   #pragma push_macro("Y")
   #pragma push_macro("X")
   printf("\n%d",X);
   #define X 2   // C4005
   printf("\n%d",X);
   #pragma pop_macro("X")
   printf("\n%d",X);
   #pragma pop_macro("Y")
   printf("\n%d",Y);
}
1
2
1
2
1
3

See also

Pragma directives and the __pragma and _Pragma keywords