limits.h trong C | Thư viện C chuẩn




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ị Miêu 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ả:

Limits.h trong C

Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.

Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

Các bạn có thể mua thêm khóa học JAVA CORE ONLINE VÀ ỨNG DỤNG cực hay, giúp các bạn vượt qua các dự án trên trường và đi thực tập Java. Khóa học có giá chỉ 300K, nhằm ưu đãi, tạo điều kiện cho sinh viên cho thể mua khóa học.

Nội dung khóa học gồm 16 chuơng và 100 video cực hay, học trực tiếp tại https://www.udemy.com/tu-tin-di-lam-voi-kien-thuc-ve-java-core-toan-tap/ Bạn nào có nhu cầu mua, inbox trực tiếp a Tuyền, cựu sinh viên Bách Khoa K53, fb: https://www.facebook.com/tuyen.vietjack

Follow facebook cá nhân Nguyễn Thanh Tuyền https://www.facebook.com/tuyen.vietjack để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile.... mới nhất của chúng tôi.

Các bài Thư viện C phổ biến khác tại VietJack:




Tài liệu giáo viên