溢出檢查:
using System;
class MyClass
{
static void Main()
{
int i;
byte b;
i = 255;
b = (byte)i; /* i 在 byte 的范圍內, 不會溢出 */
b = unchecked((byte)i); /* 同上一行, 不做溢出檢查 */
Console.WriteLine(b); // 255
i++;
b = (byte)i; /* i 超出 byte 的范圍內, 會溢出 */
b = unchecked((byte)i); /* 同上一行, 不做溢出檢查 */
Console.WriteLine(b); // 0
i = 255;
b = checked((byte)i); /* 可以通過溢出檢測 */
Console.WriteLine(b); // 255
i++;
b = checked((byte)i); /* 不能通過溢出檢測, 會報錯 */
Console.WriteLine(b);
Console.ReadKey();
}
}