Các bài toán trong thực tế thường có dữ liệu không chỉ là số nguyên mà còn thuộc nhiều kiểu dữ liệu khác. Mỗi kiểu dữ liệu sẽ khác nhau về cách lưu trữ, công dụng và dung lượng bộ nhớ. Mỗi ngôn ngữ lập trình sẽ cung cấp sẵn các kiểu dữ liệu chuẩn biết sẵn phạm vi lưu trữ, dung lượng bộ nhớ và cách thức làm việc với các phép toán. Các kiểu dữ liệu chuẩn sẽ được trình bày trong bài này.

Kiểu nguyên

Hai kiểu dữ liệu nguyên thường dùng là intlong long, trong đó int là kiểu số nguyên nhỏ (dưới 2 tỷ) và long long là kiểu số nguyên lớn (dưới 9 tỷ tỷ).

Dữ liệu kiểu nguyên
Kiểu Bộ nhớ Phạm vi giá trị
int 4 byte Từ -231 đến 232-1
long long 8 byte Từ -263 đến 263-1

Kiểu nguyên chỉ lưu trữ phần nguyên mà không lưu trữ phần thập phân. Khi chia hai số kiểu nguyên, ta sẽ nhận lại một số kiểu nguyên. Do vậy, các kết quả phép chia hai số nguyên sẽ bị bỏ đi phần thập phân, chính là phép chia lấy nguyên, điều này đã được chú ý trong Bài 2.

Kiểu thập phân

Dữ liệu kiểu thập phân lưu trữ cả phần nguyên và phần thập phân. Hai kiểu dữ liệu thập phân thường dùng là floatdouble, tùy thuộc vào nhu cầu về độ chính xác.

Dữ liệu kiểu nguyên
Kiểu Bộ nhớ Phạm vi giá trị
float 4 byte 9 chữ số thập phân
double 8 byte 15 chữ số thập phân

Kiểu kí tự

Kiểu kí tự trong C++ là char, dùng để lưu trữ một kí tự riêng biệt. Do C++ không có kiểu dữ liệu chuẩn lưu trữ chuỗi kí tự, nên đây sẽ là nền tảng để xây dựng nên kiểu chuỗi (học ở bài 17).

Dữ liệu kiểu nguyên
Kiểu Bộ nhớ Phạm vi giá trị
char 1 byte 256 kí tự

Kiểu char chỉ lưu trữ 256 kí tự trong bảng mã ASCII. Ngoài ra, kiểu char còn được gọi là kiểu nguyên, bởi vì nó cũng lưu trữ các số nguyên từ 0 đến 255 (bản chất là mã số của các kí tự). Kiểu char khi xuất ra màn hình có thể dưới dạng là một kí tự hoặc là một số nguyên, nhưng bản chất đều là cùng một giá trị.

Kiểu logic

Kiểu logic chỉ gồm hai giá trị là Đúng hoặc Sai, trong C++ hai giá trị đó là true và false. Để lưu trữ giá trị logic, người ta sử dụng kiểu bool.

Dữ liệu kiểu nguyên
Kiểu Bộ nhớ Phạm vi giá trị
bool 1 byte true hoặc false

Giá trị logic dùng để điều khiển chương trình bằng các cấu trúc điều khiển (học ở chủ đề 2, bài 7 - 11).



BÀI TẬP