Với kiểu dữ liệu số nguyên (integer) ta có các loại sau:
KiểuKích thướcVùng giá trịchar1 byte-128 tới 127 hoặc 0 tới 255unsigned char1 byte0 tới 255signed char1 byte-128 tới 127int2 hoặc 4 bytes-32,768 tới 32,767 hoặc -2,147,483,648 tới 2,147,483,647unsigned int2 hoặc 4 bytes0 tới 65,535 hoặc 0 tới 4,294,967,295short2 bytes-32,768 tới 32,767unsigned short2 bytes0 tới 65,535long4 bytes-2,147,483,648 tới 2,147,483,647unsigned long4 bytes0 tới 4,294,967,295
Cùng là dữ liệu kiểu số học nhưng ta lại có nhiều kiểu khác nhau. Việc này giúp tiết kiệm bộ nhớ là linh động hơn trong việc lưu dữ liệu.
Ví dụ khi lưu tuổi một người ta chỉ cần dùng kiểu char hoặc unsigned char. Vừa tiết kiệm bộ nhớ nhưng vẫn đảm bảo có thể lưu tất cả các tuổi có thể xảy ra.
Nhưng với trường hợp dữ liệu lớn hơn, như số người trong một quốc gia thì lên tới con số hàng triệu. Do đó ta phải sử dụng loại dữ liệu khác như int