__ptr32、__ptr64
Microsoft 特定的
__ptr32 代表 32 位元系統上的原生指標,而 __ptr64 代表 64 位元系統上的原生指標。
下列範例將示範如何宣告每一個這些類型的指標:
int * __ptr32 p32;
int * __ptr64 p64;
在 32 位元系統上,使用 __ptr64 宣告的指標會截斷為 32 位元指標。 在 64 位元系統上,使用 __ptr32 宣告的指標會強制轉型為 64 位元指標。
注意事項 |
---|
使用 /clr:pure 進行編譯時,無法使用 __ptr32 或 __ptr64。否則會產生 Compiler Error C2472。 |
範例
下列範例將示範如何使用 __ptr32 和 __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;
}