Compartilhar via


__ptr32, __ptr64

Específicos do Microsoft

__ptr32representa um ponteiro nativo em um sistema de 32 bits, enquanto __ptr64 representa um ponteiro nativo em um sistema de 64 bits.

O exemplo a seguir mostra como declarar cada um desses tipos de ponteiro:

int * __ptr32 p32;
int * __ptr64 p64;

Em um sistema de 32 bits, um ponteiro é declarado com __ptr64 será truncado para um ponteiro de 32 bits.Em um sistema de 64 bits, um ponteiro é declarado com __ptr32 é forçado para um ponteiro de 64 bits.

ObservaçãoObservação

Não é possível usar __ptr32 ou __ptr64 durante a compilação com /clr:pure.Caso contrário, Compiler Error C2472 será gerado.

Exemplo

O exemplo a seguir mostra como declarar e alocar os ponteiros com o __ptr32 e __ptr64 as palavras-chave.

#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;
}
  

Consulte também

Referência

Tipos fundamentais (C++)