Cách ép kiểu trong c

      143

Ép kiểu là phương pháp để chuyển đổi một vươn lên là từ kiểu tài liệu này quý phái kiểu dữ liệu khác. Ví dụ, khi bạn muốn lưu trữ một quý giá long cho một vài số nguyên, bạn phải ép mẫu mã long thành int.

Trong C bạn có thể chuyển thay đổi giá trị từ 1 kiểu này thanh lịch một hình dạng khác áp dụng toán tử ép kiểu như sau:

(ten-kieu) bieu_thucXem xét lấy ví dụ sau mà lại toán tử ép dạng hình làm cho phép chia một phát triển thành nguyên được triển khai như là một chuyể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("tieudung24g.net chuc cac ban hoc tot! "); Khi tiến hành đoạn code, hiệu quả sau đây được in ra, phát triển thành kq tất cả kiểu double:

Biên dịch và thực thi chương trình C trên sẽ cho hiệu quả sau:

*

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

Bạn đang xem: Cách ép kiểu trong c

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

Xem thêm: Chợ Sale Cuối Tuần Tphcm - Top 8 Hội Chợ Cuối Tuần Đông Khách Nhất Tphcm

Sự tăng cấp số nguyên vào C

Sự nâng cấp số nguyên là quy trình mà các giá trị của số nguyên nhỏ hơn int hoặc unsigned int đổi khác thành kiểu int hoặc unsigned int. Mang sử chúng ta có lấy ví dụ như về việc thêm một ký kết tự vào một trong những 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("tieudung24g.net chuc cac ban hoc tot! "); Biên dịch và triển khai chương trình C trên đã cho tác dụng sau:

*

Ở đây, cực hiếm của biến chuyển tong là 120 cũng chính vì trình biên dịch tiến hành sự tăng cấp số nguyên và biến hóa giá trị "c" thành ACII trước khi triển khai phép toán thêm.

Phép thay đổi số học thông thường

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

*

Phép chuyển đổi số học thông thường không được thực hiện cho các toán tử gán, cho những toán tử logic: && và ||. Họ theo dõi ví dụ như sau nhằm hiểu tư tưởng 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("tieudung24g.net chuc cac ban hoc tot! ");Biên dịch và tiến hành chương trình C trên đã cho công dụng sau:

*

Ở đây, cách đơn giản và dễ dàng để gọi là thứ nhất giá trị c chuyển thành số nguyên, nhưng bởi vì giá trị ở đầu cuối là double, vì thế phép biến hóa số học thông thường áp dụng và bộ biên dịch thay đổi i cùng c thành hình trạng float cùng lấy tác dụng phép cộng chuyển sang đẳng cấp float.