Bài viết được sự đồng ý của tác giả Trần Hữu Cương.
Trong lập trình C/C++ (hoặc các ngôn ngữ khác), kiểu dữ liệu đại diện cho các giá trị mà một biến có thể lưu trữ hoặc một hàm có thể trả về.
Biến trong chương trình có kiểu dữ liệu nhất định, và kích thước của biến được xác định bằng số byte.
Lập trình C/C++ có tổng cộng 4 kiểu dữ liệu: Kiểu dữ liệu cơ bản, kiểu dữ liệu enum, kiểu void và kiểu dữ liệu nâng cao.
Kiểu dữ liệu cơ bản
Kiểu dữ liệu cơ bản trong lập trình là kiểu dữ liệu số học, có thể là số nguyên hoặc số thực.
Kiểu số nguyên (integer)
Có một số loại kiểu dữ liệu số nguyên trong lập trình, bao gồm:
Kiểu | Kích thước | Vùng giá trị |
---|---|---|
char | 1 byte | -128 tới 127 hoặc 0 tới 255 |
unsigned char | 1 byte | 0 tới 255 |
signed char | 1 byte | -128 tới 127 |
int | 2 hoặc 4 bytes | -32,768 tới 32,767 hoặc -2,147,483,648 tới 2,147,483,647 |
unsigned int | 2 hoặc 4 bytes | 0 tới 65,535 hoặc 0 tới 4,294,967,295 |
short | 2 bytes | -32,768 tới 32,767 |
unsigned short | 2 bytes | 0 tới 65,535 |
long | 4 bytes | -2,147,483,648 tới 2,147,483,647 |
unsigned long | 4 bytes | 0 tới 4,294,967,295 |
Có rất nhiều kiểu dữ liệu số học khác nhau, mỗi kiểu có đặc điểm riêng. Điều này giúp tiết kiệm bộ nhớ và linh hoạt hơn trong việc lưu trữ dữ liệu.
Khi lưu tuổi của một người, ta có thể sử dụng kiểu char hoặc unsigned char. Điều này không chỉ tiết kiệm bộ nhớ mà còn đảm bảo có thể lưu được tất cả các tuổi có thể xảy ra.
Khi xử lí dữ liệu lớn hơn, như số lượng người trong một quốc gia, con số có thể lên tới hàng triệu. Trong trường hợp này, chúng ta cần sử dụng kiểu dữ liệu int.
Kiểu số thực (float)
Có một số loại dữ liệu số thực (dấu phẩy động) tương tự như sau:
Kiểu | Kích thước | Vùng giá trị | Độ chính xác |
---|---|---|---|
float | 4 byte | 1.2E-38 tới 3.4E+38 | 6 vị trí thập phân |
double | 8 byte | 2.3E-308 tới 1.7E+308 | 15 vị trí thập phân |
long double | 10 byte | 3.4E-4932 tới 1.1E+4932 | 19 vị trí thập phân |
Mã ví dụ:
#include#include int main() { int age = 25; int population = 85000000; // 85 triệu printf("Age: %d - Population: %d \n", age, population); float pi = 3.14; // giá trị số pi printf("pi: %f \n", pi); printf("Storage size for int : %d \n", sizeof(int)); // kích thước kiểu int printf("Storage size for float : %d \n", sizeof(float)); // kích thước kiểu float return 0; }
Kết quả:.
Kiểu dữ liệu Enum
Enum trong ngôn ngữ C, còn được gọi là kiểu dữ liệu cố định hoặc kiểu liệt kê, được sử dụng để định nghĩa một tập hợp các giá trị có thể nhận. Mỗi giá trị trong Enum chỉ có thể là một số nguyên được xác định trước.
Kiểu Enum này tương đồng với kiểu Enum trong các ngôn ngữ lập trình như Java, Node.Js hoặc Python….
Kiểu Void
Void là một kiểu dữ liệu được sử dụng để chỉ ra rằng một phương thức hoặc hàm không trả về bất kỳ giá trị nào (không phải là null).
Nó có thể được áp dụng trong những tình huống dưới đây:
Ví dụ:.
void hello() { printf("hello world"); }
Ví dụ:. 2 cách viết dưới đây tương đương nhau:
void hello() { printf("hello world"); } // tương đương với void hello(void) { printf("hello world"); }
Kiểu Dữ liệu nâng cao
C trong những kiểu dữ liệu tiên tiến bao gồm:
Kiểu dữ liệu boolean
Trong lập trình C/C++, kiểu bool hay boolean được sử dụng.
Kiểu dữ liệu Boolean đại diện cho hai giá trị đúng/sai (true/false, yes/no, 1/0) để biểu thị hai giá trị thật (truth value).
Trong ngôn ngữ lập trình C, kiểu boolean được gọi là bool. Tuy nhiên, trong Java thì kiểu này được gọi là boolean, trong Python thì gọi là bool. Tên gọi này khác nhau tùy theo ngôn ngữ được sử dụng.
Từ đầu, ngôn ngữ C không hỗ trợ loại bool, thay vào đó nó sử dụng số nguyên để biểu diễn true/false (0 là false, không phải 0 là true). Chỉ từ phiên bản C99 standard cho ngôn ngữ C trở đi, nó mới bắt đầu hỗ trợ kiểu bool.
Lưu ý
Kiểu String.
C/C++ không hỗ trợ loại dữ liệu string để hiển thị văn bản. Thay vào đó, để hiển thị các giá trị kiểu text/string, chúng ta sử dụng kiểu char. Tuy char là kiểu số, nhưng nó được hiểu thành các ký tự trong bảng mã ASCII tương ứng với giá trị của nó. Một đoạn văn bản/string trong C/C++ sẽ được biểu diễn bởi một mảng char.
32 tương ứng với dấu cách, 48 tương ứng với ký tự ‘0’, 65 tương ứng với ký tự ‘A’.
Để hiển thị từ “hello”, chúng ta cần một mảng char tương ứng với các giá trị [104, 101, 108, 108, 111].
Kiểu bool.
Trong ngôn ngữ lập trình C, kiểu bool thực chất là kiểu số nguyên (0 được hiểu là sai, còn các số khác 0 được hiểu là đúng).
Bài viết ban đầu đã được xuất bản trên trang web codecute.Com.
Có thể có những điều bạn quan tâm:
Hãy xem thêm vị trí tuyển dụng lập trình C/C++ với mức lương hấp dẫn tại đây.
Tôi là Nguyễn Văn Sỹ có 15 năm kinh nghiệm trong lĩnh vực thiết kế, thi công đồ nội thất; với niềm đam mê và yêu nghề tôi đã tạo ra những thiết kếtuyệt vời trong phòng khách, phòng bếp, phòng ngủ, sân vườn… Ngoài ra với khả năng nghiên cứu, tìm tòi học hỏi các kiến thức đời sống xã hội và sự kiện, tôi đã đưa ra những kiến thức bổ ích tại website nhaxinhplaza.vn. Hy vọng những kiến thức mà tôi chia sẻ này sẽ giúp ích cho bạn!