下表显示了预定义的隐式指针转换。 隐式转换可能在多种情形下发生,包括调用方法时和在赋值语句中。
在下面的示例中,一个指向 int 的指针被转换为指向 byte 的指针。 注意,该指针指向变量的最低地址字节。 连续递增该结果直到达到 int 的大小(4 字节),即可显示变量的剩余字节。
class ClassConvert { static void Main() { int number = 1024; unsafe { // Convert to byte: byte* p = (byte*)&number; System.Console.Write("The 4 bytes of the integer:"); // Display the 4 bytes of the int variable: for (int i = 0 ; i < sizeof(int) ; ++i) { System.Console.Write(" {0:X2}", *p); // Increment the pointer: p++; } System.Console.WriteLine(); System.Console.WriteLine("The value of the integer: {0}", number); // Keep the console window open in debug mode. System.Console.WriteLine("Press any key to exit."); System.Console.ReadKey(); } } } /* Output: The 4 bytes of the integer: 00 04 00 00 The value of the integer: 1024 */