Kiểu dữ liệu / Data type là gì?

Trong thiết kế C/C++ (hoặc các ngôn ngữ khác), mẫu mã dữ liệu chính là phần xác minh các giá trị nhưng một biến rất có thể nhận hay giá chỉ trị cơ mà một hàm rất có thể trả về.

Bạn đang xem: Bài 4: các kiểu dữ liệu trong lập trình c

Kiểu tài liệu của một biến, xác định kích thước (số byte) của thay đổi đó.

Có 4 kiểu tài liệu trong lập trình sẵn C/C++ là: Kiểu dữ liệu cơ bản, kiểu dữ liệu enum, loại void với kiểu tài liệu nâng cao.

Kiểu dữ liệu cơ bản

Kiểu tài liệu cơ bản là kiểu dữ liệu số học, rất có thể là số nguyên (integer) hoặc số thực (float).

Kiểu số nguyên (integer)

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 cho tới 127 hoặc 0 tới 255
unsigned char1 byte0 tới 255
signed char1 byte-128 cho tới 127
int2 hoặc 4 bytes-32,768 cho tới 32,767 hoặc -2,147,483,648 cho tới 2,147,483,647
unsigned int2 hoặc 4 bytes0 cho tới 65,535 hoặc 0 cho tới 4,294,967,295
short2 bytes-32,768 tới 32,767
unsigned short2 bytes0 tới 65,535
long4 bytes-2,147,483,648 cho tới 2,147,483,647
unsigned long4 bytes0 tới 4,294,967,295

Cùng là dữ liệu kiểu số học mà lại ta lại có không ít kiểu không giống nhau. Việc này góp tiết kiệm bộ nhớ là linh động hơn trong vấn đề lưu dữ liệu.

Xem thêm: Mấy Ngày Nữa Đến Trung Thu 2020, Tết Trung Thu 2020 Ngày Mấy

Ví dụ khi giữ tuổi một người ta chỉ cần dùng thứ hạng char hoặc unsigned char. Vừa huyết kiệm bộ nhớ lưu trữ nhưng vẫn bảo đảm an toàn có thể lưu toàn bộ các tuổi có thể xảy ra.

Nhưng với trường hợp tài liệu lớn hơn, như số người trong một đất nước thì lên tới con số sản phẩm triệu. Do đó ta phải sử dụng loại tài liệu khác như int

Kiểu số thực (float)

Tương từ bỏ với kiểu tài liệu số thực (dấu phẩy động) ta cũng có thể có các nhiều loại sau:

KiểuKích thướcVùng giá chỉ trịĐộ bao gồm xác
float4 byte1.2E-38 cho tới 3.4E+386 địa chỉ thập phân
double8 byte2.3E-308 tới 1.7E+30815 địa chỉ thập phân
long double10 byte3.4E-4932 tới 1.1E+493219 địa chỉ thập phân

Code ví dụ:

#include #include int main() int age = 25; int population = 85000000; // 85 triệu printf("Age: %d - Population: %d ", age, population); float pi = 3.14; // giá trị số pi printf("pi: %f ", pi); printf("Storage kích cỡ for int : %d ", sizeof(int)); // size kiểu int printf("Storage form size for float : %d ", sizeof(float)); // kích thước kiểu float return 0;Kết quả:

*

Kiểu dữ liệu Enum

Kiểu dữ liệu Enum trong ngôn ngữ C hay có cách gọi khác là kiểu dữ liệu cố định, phong cách liệt kê. Quý hiếm của một Enum chỉ hoàn toàn có thể nhận giá trị là một trong những các số nguyên mang đến trước.

Kiểu Enum này khá tương tự với giao diện Enum vào Java, Node.js tốt Python…

Kiểu Void

Kiểu void dùng xác định không có mức giá trị như thế nào (không yêu cầu là null).

Nó được sử dụng trong số trường phù hợp sau đây:

Kiểu trả về của một hàm: lúc 1 không trả về dữ liệu gì thì hàm đó bao gồm kiểu void

Ví dụ:

void hello() printf("hello world");Hàm với tham số void (tức là hàm không tồn tại tham số đầu vào)Ví dụ: 2 biện pháp viết tiếp sau đây tương đương nhau:

void hello() printf("hello world");// tương đương vớivoid hello(void) printf("hello world");Con trỏ dạng hình void void * được dùng để tham chiếu thới địa chỉ cửa hàng của một đối tượng người tiêu dùng (chứ không phải là một trong kiểu dữ liệu mới. Phần này hơi nặng nề hiểu mình sẽ có được bài riêng)

Kiểu dữ liệu nâng cao

Các dạng hình dữ liệu nâng cao của C gồm:

Con trỏ (pointer)Kiểu mảng (array)Kiểu kết cấu (structure)Kiểu unionKiểu hàm (function)

Kiểu tài liệu boolean

Kiểu bool, boolean trong lập trình sẵn C/C++

Lưu ý

Kiểu String

C/C++ không có loại dữ liệu string (text) dùng làm hiển thị văn bản. Để hiển thị những giá trị vẻ bên ngoài text/string, ta sử dụng kiểu char. Thực chất char vẫn là hình dạng số, nhưng tùy thuộc vào giá trị nhưng mà nó được phát âm thành các ký tự trong bảng mã ASCII. Một đoạn text/string trong C/C++ sẽ là một trong những mảng char

Ví dụ số 32 tương xứng với vệt cách, 48 khớp ứng với cam kết tự "0", 65 tương ứng với ký tự "A".

Để hiển thị đoạn text ‘hello’ thì ta đề nghị mảng char tương xứng là <104, 101, 108, 108, 111>

Kiểu bool

Trong thiết kế C, thực tế bool chính là kiểu integer (0 có nghĩa là false, không giống 0 có nghĩa là true)