Kiểu dữ liệu trong lập trình C
Nếu chưa biết kiểu dữ liệu nào dưới đây được coi là kiểu dữ liệu cơ bản trong ngôn ngữ lập trình C, bài viết sẽ cho bạn câu trả lời.
Ngôn ngữ lập trình C được sử dụng khá nhiều trong phát triển ứng dụng và web. Hiểu rõ các thành phần trong ngôn ngữ lập trình C sẽ giúp bạn sử dụng chúng đúng cách. Ở bài viết này, chúng ta hãy cùng nhau tìm hiểu về các kiểu dữ liệu trong ngôn ngữ C.
Trong ngôn ngữ lập trình C, các kiểu dữ liệu ám chỉ phần mở rộng của hệ thống được sử dụng cho khai báo biến với cái kiểu khác nhau. Kiểu của biến xác định lượng bộ nhớ được dùng để lưu biến đó và cách các bit được lưu trữ khi được thông dịch.
Các kiểu biến trong C được phân chia như sau:
STT | Kiểu và miêu tả |
---|---|
1 | Kiểu cơ bản Là các kiểu dữ liệu số học và bao gồm 2 kiểu chính: a) kiểu số nguyên và b) kiểu số thực dấu chấm động. |
2 | Kiểu liệt kê Đây là các kiểu số học và được dùng để định nghĩa các biến mà nó có thể được gán trước một số lượng nhất định giá trị số nguyên qua suốt chương trình. |
3 | Kiểu void Kiểu định danh void là kiểu đặc biệt thể hiện rằng không có giá trị nào. |
4 | Kiểu phát triển từ cơ bản Bao gồm các kiểu : a) con trỏ, b) kiểu mảng, c) kiểu cấu trúc, d) kiểu union và e) kiểu function (hàm). |
Các kiểu dữ liệu mảng và cấu trúc được sử dụng trong tập hợp như các kiểu dữ liệu gộp. Các kiểu là hàm chỉ định loại kiểu mà hàm trả về. Chúng ta sẽ xem các kiểu dữ liệu cơ bản ở phần dưới đây, trong đó những kiểu còn lại sẽ được nhắc đến ở các chương sau.
Kiểu số nguyên (kiểu int) trong C
Bảng dưới đây đưa cho bạn những hiểu biết chi tiết về kiểu số nguyên với cỡ lưu trữ cũng như giới hạn của nó:
Kiểu | Cỡ lưu trữ | Dãy 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 |
Bạn có thể lấy cỡ chính xác của các kiểu của các biến trên những nền tảng cụ thể, bạn có thể sử dụng toán tử sizeof. Biểu thức sizeof(kieu) trả về cỡ của đối tượng hoặc kiểu dưới dạng byte. Dưới đây là ví dụ để lấy về size của đối tượng int trên bất kỳ máy tính nào.
#include <stdio.h> #include <limits.h> int main() { printf("Kich co luu tru cho so nguyen (int) la: %d \n", sizeof(int)); return 0; }
Biên dịch và chạy chương trình C trên sẽ cho kết quả:
Kich co luu tru cho so nguyen (int) la: 4
Kiểu số thực dấu chấm động (Floating-Point) trong C
Bảng dưới đây đưa cho bạn những hiểu biết cụ thể về các kiểu số thực dấu chấm động tiêu chuẩn với cỡ lưu trữ và dải giá trị cũng như độ chính xác:
Kiểu | Cỡ lưu trữ | Dãy 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 |
float.h trong Header file định nghĩa các macro cho phép bạn sử dụng các giá trị này và các kiểu cụ thể khác về giá trị biểu diễn nhị phân của số thực trong chương trình của bạn. Dưới đây là ví dụ sẽ in ra cỡ của kiểu float cũng như dải giá trị của nó:
#include <stdio.h>
#include <float.h>
int main()
{
printf("Lớp lưu trữ cho số thực (float) là: %d \n", sizeof(float));
printf("Giá trị số thực dương nhỏ nhất là: %E\n", FLT_MIN );
printf("Giá trị số thực dương lớn nhất là: %E\n", FLT_MAX );
printf("Độ chính xác: %d\n", FLT_DIG );
return 0;
}
Biên dịch và chạy chương trình C trên sẽ cho kết quả:
Lớp lưu trữ cho số thực (float) là: 4
Giá trị số thực dương nhỏ nhất là: 1.175494E-38
Giá trị số thực dương lớn nhất là: 3.402823E+38
Độ chính xác: 6
Kiểu void trong C
Kiểu void xác định không có giá trị nào. Nó được sử dụng trong 3 trường hợp sau đây:
Hàm trả về void: Có rất nhiều hàm trong ngôn ngữ C mà không trả về dữ liệu nào và bạn có thể nói rằng đó là hàm void. Một hàm mà không trả về giá trị nào có kiểu là void. Ví dụ: void exit (int status);
Hàm với tham số void: Có những hàm trong C mà không chấp nhận bất kỳ tham số. Một hàm với không có tham số nào có thể chấp nhâu là một void. Ví dụ: int rand(void);
Con trỏ tới void: Một con trỏ có kiểu void * đại diện cho địa chi của đối tượng, chứ không phải là một kiểu. Ví dụ hàm cấp phát bộ nhớ void *malloc (size_t size); trả về một con trỏ void có thể ép kiểu sang bất kỳ một đối tượng nào.
Bạn có thể không hiểu các điểm này về kiểu void, chúng ta nên tiếp tục và trong các chương tiếp theo, chúng ta sẽ nhắc lại về các điểm này.
Xác định định dạng cơ bản
Ngôn ngữ lập trình C có các xác định định dạng khác nhau cho từng kiểu dữ liệu. Dưới đây là một vài trong số chúng:
Xác định định dạng | Kiểu dữ liệu | Code mẫu |
%d hoặc %i | int |
|
%f | float |
|
%lf | double |
|
%c | char |
|
%s | Được dùng cho strings (text). |
|
Bài trước: Cú pháp cơ bản của lập trình C
Bài tiếp: Biến trong lập trình C
Bạn nên đọc
- Code NgầuThích · Phản hồi · 4 · 01/07/20
Cũ vẫn chất
-
Cách xem lịch sử chỉnh sửa trên Google Docs
Hôm qua -
Hướng dẫn tìm tin nhắn trên Instagram rất đơn giản
Hôm qua -
7 mẹo giải phóng không gian lưu trữ trên Google Photos
Hôm qua -
Lập trình hướng đối tượng trong Python
Hôm qua -
Hướng dẫn tạo bong bóng chat Messenger iPhone
Hôm qua -
Hàm ROUND trong SQL Server
Hôm qua -
Pentakill DTCL mùa 10: Build đội hình mạnh Pentakill TFT
Hôm qua -
Mean girl là gì?
Hôm qua -
Cách vẽ tóc rối cho nhân vật trong anime/manga
Hôm qua -
Măm Măm DTCL: Cách chơi Rồng Luyện DTCL mùa 7.5
Hôm qua 1