Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Específicos de Microsoft
__ptr32 representa un puntero nativo en un sistema de 32 bits, mientras que __ptr64 representa un puntero nativo en un sistema de 64 bits.
El ejemplo siguiente se muestra cómo declarar cada uno de estos tipos de puntero:
int * __ptr32 p32;
int * __ptr64 p64;
en un sistema de 32 bits, un puntero declarado con __ptr64 se trunca a un puntero de 32 bits.En un sistema de 64 bits, un puntero declarado con __ptr32 se convierte en un puntero de 64 bits.
[!NOTA]
No puede utilizar __ptr32 o __ptr64 al compilar con /clr:pure.Si no, Compiler Error C2472 se generará.
Ejemplo
El ejemplo siguiente se muestra cómo declarar y asignar punteros con las palabras clave de __ptr32 y de __ptr64 .
#include <cstdlib>
#include <iostream>
int main()
{
using namespace std;
int * __ptr32 p32;
int * __ptr64 p64;
p32 = (int * __ptr32)malloc(4);
*p32 = 32;
cout << *p32 << endl;
p64 = (int * __ptr64)malloc(4);
*p64 = 64;
cout << *p64 << endl;
}