Ép kiểu dữ liệu trong c

-

Ép kiểu là giải pháp để đổi khác một biến đổi từ kiểu dữ liệu này lịch sự kiểu tài liệu khác. Ví dụ, khi bạn muốn lưu trữ một giá trị long cho một trong những số nguyên, bạn phải ép hình dáng long thành int.

Trong C chúng ta có thể chuyển đổi giá trị từ 1 kiểu này lịch sự một kiểu dáng khác áp dụng toán tử xay kiểu như sau:

(ten-kieu) bieu_thucXem xét lấy một ví dụ sau nhưng mà toán tử ép hình dáng làm chất nhận được chia một vươn lên là nguyên được tiến hành như là một vận động dấu chấm động:

#include main() int sochia = 32, sobichia = 6; double kq; kq = (double) sochia / sobichia; printf("Gia tri cua kq la: %f ", kq ); printf(" =========================== "); printf("worldlinks.edu.vn chuc cac ban hoc tot! "); Khi triển khai đoạn code, tác dụng sau phía trên được in ra, biến đổi kq bao gồm kiểu double:

Biên dịch và thực hiện chương trình C trên sẽ cho tác dụng sau:

*

Nên ghi lưu giữ rằng tại chỗ này toán tử ép kiểu tất cả quyền ưu tiên rộng phép chia, chính vì như vậy giá trị của sochia trước tiên được đổi khác sang hình dạng double và ở đầu cuối nó thực hiện chia bởi tính toán trong trường cực hiếm double.

Bạn đang xem: Ép kiểu dữ liệu trong c

Biến đổi kiểu có thể là được ẩn đi có nghĩa là được thực hiện auto bởi bộ biên dịch, hoặc nó rất có thể được xác minh một cách ví dụ bởi thực hiện toán tử nghiền kiểu. Nó là tốt cho bạn nên thực hiện toán tử ép loại ở bất cứ đâu nhưng mà cần thay đổi kiểu.

Xem thêm: Biểu Phí Chuyển Tiền Từ Ngân Hàng Agribank Sang Ngân Hàng Khác Hiện Nay

Sự upgrade số nguyên vào C

Sự nâng cấp số nguyên là quy trình mà những giá trị của số nguyên nhỏ hơn int hoặc unsigned int biến hóa thành kiểu int hoặc unsigned int. đưa sử các bạn có ví dụ như về bài toán thêm một ký kết tự vào một vài int:

#include main() int i = 21; char c = "c"; /* Gia tri ASCII la 99 */ int tong; tong = i + c; printf("Gia tri cua tong la: %d ", tong ); printf(" =========================== "); printf("worldlinks.edu.vn chuc cac ban hoc tot! "); Biên dịch và xúc tiến chương trình C trên sẽ cho tác dụng sau:

*

Ở đây, quý giá của biến hóa tong là 120 bởi vì trình biên dịch thực hiện sự nâng cấp số nguyên và chuyển đổi giá trị "c" thành ACII trước khi thực hiện phép toán thêm.

Phép biến đổi số học tập thông thường

Phép đổi khác số học thông thường là giải pháp ép loại giá trị của nó thành một giao diện thường dùng. Trình biên dịch đầu tiên sẽ tiến hành nâng cung cấp số nguyên, nó chuyển đổi từ thấp mang đến cao, dưới đây là thứ bậc:

*

Phép chuyển đổi số học thường thì không được tiến hành cho các toán tử gán, cho những toán tử logic: && và ||. Họ theo dõi ví dụ sau để hiểu quan niệm này:

#include main() int i = 21; char c = "c"; /* Gia tri ASCII la 99 */ float tong; tong = i + c; printf("Gia tri cua tong la: %f ", tong ); printf(" =========================== "); printf("worldlinks.edu.vn chuc cac ban hoc tot! ");Biên dịch và xúc tiến chương trình C trên vẫn cho công dụng sau:

*

Ở đây, cách đơn giản để hiểu là thứ nhất giá trị c gửi thành số nguyên, nhưng cũng chính vì giá trị cuối cùng là double, chính vì vậy phép biến hóa số học thường thì áp dụng và cỗ biên dịch chuyển đổi i và c thành kiểu float cùng lấy công dụng phép cộng gửi sang vẻ bên ngoài float.