Giới thiệu
ulong (viết tắt của System.UInt64) là kiểu số nguyên không dấu 64-bit. Phạm vi giá trị: 0 đến 18,446,744,073,709,551,615.
Khai báo và giá trị Min/Max
ulong val = 7712059531; Console.WriteLine(ulong.MaxValue); // 18446744073709551615 Console.WriteLine(ulong.MinValue); // 0
Ví dụ hoàn chỉnh
using System;
public class Demo
{
public static void Main()
{
ulong val = 7712059531;
Console.WriteLine(val);
Console.WriteLine(ulong.MaxValue);
Console.WriteLine(ulong.MinValue);
Console.WriteLine(typeof(ulong)); // System.UInt64
}
}
Kết quả
7712059531 18446744073709551615 0 System.UInt64
Bảng so sánh các kiểu số nguyên
| Kiểu | Alias | Kích thước | Phạm vi |
|---|---|---|---|
| System.Byte | byte | 8-bit | 0 to 255 |
| System.UInt16 | ushort | 16-bit | 0 to 65,535 |
| System.UInt32 | uint | 32-bit | 0 to 4,294,967,295 |
| System.UInt64 | ulong | 64-bit | 0 to 18,446,744,073,709,551,615 |
Lưu ý quan trọng
ulongkhông phải kiểu chuẩn CLS (Common Language Specification) - tránh dùng trong public API của thư viện đa ngôn ngữ.- Không có literal suffix cho ulong (khác với
Lcho long,Ucho uint). DùngULhoặcul(ví dụ:123UL). - Phép toán giữa
ulongvà kiểu có dấu (long, int) yêu cầu ép kiểu tường minh. - Dùng cho: địa chỉ bộ nhớ, hash, cryptography, ID lớn, bitwise operations.
Ví dụ ép kiểu
ulong u = 100; long l = (long)u; // An toàn nếu giá trị <= long.MaxValue // long l2 = -5; // ulong u2 = (ulong)l2; // Nguy hiểm: giá trị âm thành số dương rất lớn