What is the POINTER_32 macro?


The POINTER_32 macro is a standard Windows SDK macro usually declared in header files BaseTsd.h, Ntdef.h or Winnt.h, depending on the version, as follows:

#ifdef (__AXP64__)
  #define POINTER_32 _ptr32
#else
  #define POINTER_32
#endif

This macro is used as an extension of the MSVC compiler to declare 32-bit pointers in the code that uses both the 32-bit and 64-bit data models. This may be required, for example, when you need to implement interprocess cooperation of a 64-bit program with a 32-bit process. That's why don't replace such pointers with 64-bit ones when porting a 32-bit project if you don't know the context.

References



Use PVS-Studio to search for bugs in C, C++, C# and Java

We offer you to check your project code with PVS-Studio. Just one bug found in the project will show you the benefits of the static code analysis methodology better than a dozen of the articles.

goto PVS-Studio;



Bugs Found

Checked Projects
355
Collected Errors
13 303