Trong bài viết này chúng ta sẽ tìm hiểu các kiểu dữ liệu trong C như: Kiểu số thực (float), số nguyên (int), ký tự (char), … và nhiều kiểu dữ liệu quan trọng khác.
C là ngôn ngữ rất khó tính, bạn không thể gán dữ liệu kiểu float cho biến được khai báo kiểu int. Vì vậy khi tạo một biến bạn cần phải xác định rõ là dữ liệu cần lưu là gì để khai báo cho phù hợp. Và sau đây là danh sách data type trong C thường được sử dụng nhất.
1. Bảng các kiểu dữ liệu trong C
Trước tiên hãy xem bảng tóm tắt các kiểu dữ liệu cơ bản trong C đã nhé, và chúng ta sẽ lần lượt tìm hiểu từng loại ở các phần tiếp theo.
Type Size (bytes) Format Specifier int 2 -> 4 %d, %i char 1 %c float 4 %f double 8 %lf short int 2 %hd unsigned int 2 -> 4 %u long int 4 -> 8 %ld, %li long long int 8 %lld, %lli unsigned long int 4 %lu unsigned long long int 8 %llu signed char 1 %c unsigned char 1 %c long double 10 -> 16 %Lf
2. Chi tiết kích thước các kiểu dữ liệu trong C
Kiểu int
Int là chữ viết tắt của Integer, đây là kiểu số nguyên âm hoặc nguyên dương và không có giá trị thập phân.
Bài viết này được đăng tại [free tuts .net]
Ví dụ:
- 0, 10, -7 là các số nguyên
- 0.4, 0.7 không phải là số nguyên
Để khai báo một biến kiểu int thì ta sử dụng cú pháp như sau:
Ngoài ra ta có thể khai báo nhiều biến liên tiếp như sau:
Kích thước của kiểu Int thường là 4 bytes (32 bits), tức giao động vào khoảng -2147483648 đến 2147483647.
Kiểu float và double
Đây là kiểu số thực, dùng để chứa những số có dấu phẩy động. Ví dụ 2.5 và 5.6 là những số thực.
Dưới đây là cách khai báo biến kiểu số thực:
Trong C, số dấu phẩy động cũng có thể được biểu diễn theo cấp số nhân. Ví dụ
Câu hỏi đặt ra là sự khác nhau giữa float và double là gì?
Về tính chất thì cả hai giống nhau, chỉ khác nhau về kích thước như sau:
- float có kích thước 4 bytes
- double có kích thước 8 bytes
Kiểu char
Kiểu char rất đặt biệt, nó dùng để lưu trữ một ký tự bất kì, và ký tự đó phải ở định dạng chuỗi. Vì vậy khi gán giá trị cho nó ta phải dùng dấu nháy để bao quanh ký tự cần gán lại.
Ví dụ:
Kích thước của kiểu char là 1 byte.
Kiểu void
Đây là kiểu dữ liệu khá đặt biệt, nó có ý nghĩa không là gì cả, thường được dùng trong những function không có giá trị trả về. Vấn đề này chúng ta sẽ học ở những bài tiếp theo nhé.
Kiểu short và long
Nếu bạn muốn lưu trữ một con số rất lớn và kiểu dữ liệu hiện tại không đáp ứng được thì hãy thêm từ khóa long vào lúc khai báo nhé. Ví dụ:
Còn nếu bạn chắc chắn số nguyên lưu trữ sẽ rất nhỏ nên không cần phải phí phạm kích thước thì hãy sư dụng từ khóa short nhé.
Bây giờ chúng ta thử xem kích thước của các kiểu dữ liệu bằng cách dùng hàm sizeof().
Kết quả thu được như sau:
Trên là danh sách các kiểu dữ liệu thường dùng trong ngôn ngữ C, bạn phải nhớ kích thước và công dụng của từng kiểu để sau này sử dụng cho phù hợp nhé. Ví dụ muốn lưu trữ số nguyên thì dùng kiểu int, số thực thì kiểu float hoặc double, ký tự thì kiểu char.
Vẫn còn một số kiểu nâng cao nữa như: Mảng, Pointer, Object, nhưng ta sẽ học nó ở những bài nâng cao.