Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

การแปลง Decimal เป็นจำนวนเต็มไม่มีเครื่องหมาย 64 บิตใน C#

ภาพรวม

เมธอด Decimal.ToUInt64(Decimal) แปลงค่า Decimal เป็น ulong (64-bit unsigned integer) โดยตัดส่วนทศนิยมทิ้ง (truncate)

ตัวอย่าง 1: ค่าที่มีทศนิยม

using System;

public class Demo {
    public static void Main() {
        Decimal val = 99.29m;
        Console.WriteLine("Decimal value = " + val);
        ulong res = Decimal.ToUInt64(val);
        Console.WriteLine("64-bit unsigned integer = " + res);
    }
}

ผลลัพธ์ตัวอย่าง 1

Decimal value = 99.29
64-bit unsigned integer = 99

ตัวอย่าง 2: ค่าทศนิยมน้อยกว่า 1

using System;

public class Demo {
    public static void Main() {
        Decimal val = 0.001m;
        Console.WriteLine("Decimal value = " + val);
        ulong res = Decimal.ToUInt64(val);
        Console.WriteLine("64-bit unsigned integer = " + res);
    }
}

ผลลัพธ์ตัวอย่าง 2

Decimal value = 0.001
64-bit unsigned integer = 0

สรุป

  • การแปลงจะ ตัดทศนิยมทิ้ง (ไม่ได้ปัดเศษ)
  • หากค่า Decimal ลบหรือเกินขอบเขต ulong จะโยน OverflowException
  • ใช้เมื่อต้องการแปลงค่าทศนิยมเป็นจำนวนเต็มไม่มีเครื่องหมายขนาดใหญ่