Kiểu dữ liệu trong C++ xác định loại dữ liệu mà một biến có thể lưu trữ như số nguyên, số thực, ký tự vv.
Bạn có thể lưu thông tin của các kiểu dữ liệu (Data Type) đa dạng như Character, Wide Character, integer, floating-point, double floating point, Boolean, …. Dựa trên kiểu dữ liệu của một biến, hệ thống sẽ cấp phát bộ nhớ và quyết định những gì có thể được lưu giữ trong bộ nhớ dành riêng đó.
Nội dung chính
Kiểu dữ liệu nguyên thủy trong C++
Tên tiếng Anh là Primitive Type, còn có thể gọi là kiểu dữ liệu gốc, kiểu dữ liệu cơ bản, hay kiểu dữ liệu có sẵn trong C++. Bên cạnh các kiểu dữ liệu gốc này, C++ cũng cung cấp các kiểu dữ liệu do người dùng tự định nghĩa (user-defined). Bảng dưới đây liệt kê danh sách 7 kiểu dữ liệu cơ bản trong C++:
Kiểu dữ liệu | Từ khóa |
---|---|
Boolean | bool |
Ký tự | char |
Số nguyên | int |
Số thực | float |
Số thực dạng Double | double |
Kiểu không có giá trị | void |
Kiểu Wide character | wchar_t |
Một số kiểu cơ bản có thể được sửa đổi bởi sử dụng một hoặc nhiều modifier sau:
- signed (kiểu có dấu)
- unsigned (kiểu không có dấu)
- short
- long
Các loại dữ liệu nguyên thủy
Các kiểu dữ liệu cơ bản dựa trên số nguyên và số thực. Ngôn ngữ C hỗ trợ cả signed và unsigned.
Kích thước bộ nhớ của các loại dữ liệu cơ bản có thể thay đổi theo hệ điều hành 32 hoặc 64 bit.
Hãy xem các kiểu dữ liệu cơ bản. Kích thước của nó được cho theo kiến trúc 32 bit.
Bảng sau hiển thị kiểu biến, lượng bộ nhớ nó dùng để lưu giá trị trong bộ nhớ, và giá trị lớn nhất và nhỏ nhất có thể được lưu giữ với các kiểu biến đó:
Kiểu | Kích thước bộ nhớ | Vùng giá trị |
---|---|---|
char | 1 byte | -127 tới 127 hoặc 0 tới 255 |
unsigned char | 1 byte | 0 tới 255 |
signed char | 1 byte | -127 tới 127 |
int | 4 byte | -2147483648 tới 2147483647 |
unsigned int | 4 byte | 0 tới 4294967295 |
signed int | 4 byte | -2147483648 tới 2147483647 |
short int | 2 byte | -32768 tới 32767 |
unsigned short int | Range | 0 tới 65,535 |
signed short int | Range | -32768 tới 32767 |
long int | 4 byte | -2,147,483,647 tới 2,147,483,647 |
signed long int | 4 byte | Tương tự như long int |
unsigned long int | 4 byte | 0 tới 4,294,967,295 |
float | 4 byte | +/- 3.4e +/- 38 (~7 chữ số) |
double | 8 byte | +/- 1.7e +/- 308 (~15 chữ số) |
long double | 8 byte | +/- 1.7e +/- 308 (~15 chữ số) |
wchar_t | 2 hoặc 4 byte | 1 wide character |
Ví dụ sử dụng toán tử để lấy gia kích cỡ kiểu dữ liệu
#include <iostream> using namespace std; int main() { cout << "Kich co cua char la: " << sizeof(char) << endl; cout << "Kich co cua int la: " << sizeof(int) << endl; cout << "Kich co cua short int la: " << sizeof(short int) << endl; cout << "Kich co cua long int la: " << sizeof(long int) << endl; cout << "Kich co cua float la: " << sizeof(float) << endl; cout << "Kich co cua double la: " << sizeof(double) << endl; cout << "Kich co cua wchar_t la: " << sizeof(wchar_t) << endl; return 0; }
Kết quả:
Kich co cua char la: 1 Kich co cua int la: 4 Kich co cua short int la: 2 Kich co cua long int la: 4 Kich co cua float la: 4 Kich co cua double la: 8 Kich co cua wchar_t la: 2