Skip to main content

Kiểu dữ liệu trong C++

Trong ngôn ngữ lập trình C/C++ gồm có 4 kiểu dữ liệu cơ sở do ngôn ngữ lâp trình mặc định sẵn cho người lập trình sử dụng. Tên kiểu dữ liệu phải được viết thường, không được phép viết in hoa.

+ Kiểu kí tự:  char.

+ Kiểu số nguyên:  int , short, long ..

+ Kiểu số thực:  float, double…

+ Kiểu luận lý:  true (đúng), false (sai).

Bảng mô tả:

Tên Độ lớn (byte) Mô tả Vùng giá trị
char 1 Kí tự hay kiểu số nguyên 8 – bit

 

256 kí tự trong bảng mã ASCII.

Có dấu: -128 to 127

 

Không dấu:  0 to 255

short 2 Kiểu số nguyên 16 – bit Có dấu: -32763to 32762

 

Không dấu: 0 to 65535

long 4 Kiểu số nguyên 32 – bit Có dấu: -2.147.483.648 to 2.147.483.648

 

Không dấu: 0 to 4.294.967.295

int * Số nguyên. Độ lớn của nó phụ thuộc vào hệ điều hành, như trong MS-DOS nó là 16-bit, trên Windows 9x/2000/NT là 32 – bit… *
float 4 Dạng dấu phẩy động với độ chính xác đơn 3.4e-38 -> 3.4e38
double 8 Dạng dấu phẩy động với độ chính xác kép 1.7e-308 -> 1.7e308
bool 1 Gía trị logic. Nó mới được thêm vào chuẩn ANSI-C++. Bởi vậy không phải tất cả các trình biên dịch đều hỗ trợ nó true hoặc false

-  Ví dụ với kiểu float, giá trị dương lớn nhất là 3.4e38 =3.4*1038  và số dương nhỏ nhất có thể biểu diễn là 3.4e-38 = 3.4*10-38
- Tuy nhiên, do số chữ số trong phần định trị là giới hạn nên số chữ số đáng tin cậy (hay ta nói là số chữ số có nghĩa) cũng giới hạn với kiểu float là 7-8 chữ số, double là 15 chữ số, và long double là 18-19 chữ số.

Lưu ý

(*) Thông thường thì bạn đã tham khảo qua các loại tài liệu, hay các bài chia sẻ về kích thước (độ lớn ) của các kiểu dữ liệu thì vô tình người ta có nhắc đến kiểu int – độ lớn của nó là 2 byte,  thì đó có thể là các tài liệu cũ. Tại 1 thời điểm nhất định có thể nó là chuẩn mực được quy ước.  Nhưng hiện nay đa số các tài liệu được cập nhật thì kiểu int – độ lớn của nó thường là 4 byte. Hầu hết ở các trình biên dịch hiện đại ngày nay thì các bạn có thể thấy rằng kiểu int – được mặc định là 32bit – tức 4 byte.

- Có những tranh cãi giữa các lập trình viên đã diễn ra cho vấn đề liệu rằng,  kiểu int là 2 byte hay là 4 byte. Để đi đến tính thống nhất cho các lập luận của những lập trình viên, các nhà lập trình chuyên nghiệp đã dùng hàm sizeof() – để xác định kích thước của 1 kiểu dữ liệu đang sử dụng trên nền tảng và trình biên dịch hiện tại của mỗi lập trình viên. Bởi vì kích thước (độ lớn) của 1 kiểu dữ liệu có thể phụ thuộc vào nền tảng và trình biên dịch compiler mà bạn đang sử dụng. Vì vậy chỉ có thể dùng hàm sizeof(<kiểu dữ liệu…>) mới có thể xác định đúng kích thước của 1 kiểu dữ liệu.

-  Nói 1 cách dễ hiểu, sizeof() là 1 hàm dùng để xác định kích thước của 1 kiểu dữ liệu trên nền tảng và trình biên dịch mà bạn đang sử dụng. Nó trả về kích thước tính theo byte của 1 kiểu dữ liệu cơ sở, con trỏ, mảng, hay 1 kiểu dữ liệu cấu trúc do lập trình viên định nghĩa