limits.h trong C
limits.h trong C
Header file có tên limits.h trong Thư viện C xác định các thuộc tính đa dạng của các kiểu biến khác nhau. Các macro, được định nghĩa trong header này, giới hạn giá trị của các kiểu biến đa dạng như char, int, và long.
Các giới hạn này xác định rằng một biến không thể chứa bất cứ giá trị nào vượt quá các giới hạn đó, ví dụ: một unsigned char có thể giữ một giá trị tối đa là 255.
Các macro được định nghĩa trong limits.h
Các giá trị sau là trình triển khai riêng và được định nghĩa với chỉ thị #define, nhưng các giá trị này không thể là chữ thường.
Macro | Giá trị | Mô tả |
---|---|---|
CHAR_BIT | 8 | Định nghĩa số bit trong một byte |
SCHAR_MIN | -128 | Định nghĩa giá trị nhỏ nhất cho một signed char |
SCHAR_MAX | 127 | Định nghĩa giá trị lớn nhất cho một signed char |
UCHAR_MAX | 255 | Định nghĩa giá trị lớn nhất cho một unsigned char |
CHAR_MIN | 0 | Định nghĩa giá trị nhỏ nhất cho một kiểu char và giá trị của nó là bằng với SCHAR_MIN nếu char biểu diễn các giá trị âm, nếu không là 0 |
CHAR_MAX | 127 | Định nghĩa giá trị nhỏ nhất cho một kiểu char và giá trị của nó là bằng với SCHAR_MAX nếu char biểu diễn các giá trị âm, nếu không là UCHAR_MAX |
MB_LEN_MAX | 1 | Định nghĩa số byte tối đa trong một multi-byte char (ký tự được biểu diễn bởi nhiều byte) |
SHRT_MIN | -32768 | Định nghĩa giá trị nhỏ nhất cho một short int |
SHRT_MAX | +32767 | Định nghĩa giá trị lớn nhất cho một short int |
USHRT_MAX | 65535 | Định nghĩa giá trị lớn nhất cho một unsigned short int |
INT_MIN | -32768 | Định nghĩa giá trị nhỏ nhất cho một int |
INT_MAX | +32767 | Định nghĩa giá trị lớn nhất cho một int |
UINT_MAX | 65535 | Định nghĩa giá trị lớn nhất cho một unsigned int |
LONG_MIN | -2147483648 | Định nghĩa giá trị nhỏ nhất cho một long int |
LONG_MAX | +2147483647 | Định nghĩa giá trị lớn nhất cho một long int |
ULONG_MAX | 4294967295 | Định nghĩa giá trị lớn nhất cho một unsigned long int |
Ví dụ
Chương trình C sau minh họa cách sử dụng của một số hằng được định nghĩa trong limits.h.
#include <stdio.h> #include <limits.h> int main() { printf("So bit de bieu dien mot byte la %d\n", CHAR_BIT); printf("Gia tri nho nhat cua SIGNED CHAR = %d\n", SCHAR_MIN); printf("Gia tri lon nhat cua SIGNED CHAR = %d\n", SCHAR_MAX); printf("Gia tri lon nhat cua UNSIGNED CHAR = %d\n", UCHAR_MAX); printf("Gia tri nho nhat cua SHORT INT = %d\n", SHRT_MIN); printf("Gia tri lon nhat cua SHORT INT = %d\n", SHRT_MAX); printf("Gia tri nho nhat cua INT = %d\n", INT_MIN); printf("Gia tri lon nhat cua INT = %d\n", INT_MAX); printf("Gia tri nho nhat cua CHAR = %d\n", CHAR_MIN); printf("Gia tri lon nhat cua CHAR = %d\n", CHAR_MAX); printf("Gia tri nho nhat cua LONG = %ld\n", LONG_MIN); printf("Gia tri lon nhat cua LONG = %ld\n", LONG_MAX); return(0); }
Biên dịch và chạy chương trình C trên sẽ cho kết quả:
Theo Tutorialspoint
Bài trước: float.h trong C
Bài tiếp: locale.h trong C
Bạn nên đọc
Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây:


Cũ vẫn chất
-
PING là gì? Test PING như thế nào?
Hôm qua -
Cách ẩn, hiện ghi chú trong bảng trên Excel
Hôm qua -
Code Tiểu Yêu Tầm Đạo mới nhất
Hôm qua -
Dynamic System Updates là gì?
Hôm qua -
Điểm ưu tiên, điểm khuyến khích, khu vực ưu tiên khi xét tuyển năm 2022
Hôm qua -
Cách tắt kiểm tra chính tả trong Word
Hôm qua 1 -
Gét gô là gì? Thử thách 6 ngày 6 đêm là gì?
Hôm qua 6 -
Cách gỡ huy hiệu Threads khỏi trang cá nhân Instagram
Hôm qua -
Các cách làm, tùy chỉnh trong bài sẽ giúp tăng tốc Windows 10 của bạn "nhanh như gió"
Hôm qua 6 -
DRAM và DRAM-less SSD có gì khác nhau?
Hôm qua