Facebook Pixel

Hoc lap trinh Join this Group

cach ep kieu du lieu trong c

By March 13, 2024 - 12:58am

Cách ép kiểu dữ liệu trong C

Cách ép kiểu dữ liệu trong C đang được rất nhiều người dùng áp dụng phổ biến. Đây chính là hành động thay đổi kiểu dữ liệu của một biến bất kỳ sang một kiểu dữ liệu khác. Để tìm hiểu thêm về cách ép kiểu này, hãy cùng chúng tôi đọc ngay bài viết dưới đây nhé!

Giải đáp: Ép kiểu là gì?

Ép kiểu chính là hành động thay đổi kiểu dữ liệu của một biến hay biểu thức bất kỳ sang một kiểu dữ liệu khác. Ví dụ như:

  • x=15.3456 (x là số thực, x ∈ R) và người dùng muốn ép kiểu x thành một số nguyên (x ∈ Z). Sau khi ép kiểu, x=15 và bỏ phần sau dấu phẩy.

  • y=978 (y là số nguyên, y ∈ Z) và người dùng muốn ép kiểu x thành một số thực (y ∈ R). Sau khi ép kiểu, y=987.000… . và thêm phần sau dấu phẩy.

Ép kiểu chính là hành động thay đổi kiểu dữ liệu của một biến hay biểu thức bất kỳ

Tìm hiểu về các loại ép kiểu dữ liệu trong C phổ biến hiện nay

Các loại ép kiểu dữ liệu trong C phổ biến nhất hiện nay được chia thành hai loại đó là:

1. Nới rộng - Widening

Nới rộng - Widening chính là quá trình làm tròn số từ kiểu dữ liệu có kích thước nhỏ hơn sang kiểu có kích thước lớn hơn. Biến đổi này sẽ không làm mất thông tin, ví dụ như chuyển từ Int sang Float. Nới rộng - Widening này còn có thể được thực hiện ngầm định bởi trình biên dịch.

Nới rộng - Widening

2. Thu hẹp - Narrowing

Thu hẹp - Narrowing chính là quá trình làm tròn số từ kiểu dữ liệu có kích thước lớn hơn sang kiểu có kích thước nhỏ hơn. Kiểu biến đổi này có thể làm mất thông tin và không thể thực hiện ngầm định bởi trình biên dịch. Vậy nên người dùng phải thực hiện chuyển kiểu tường minh. 

Ép kiểu ngầm định là gì?

Ép kiểu ngầm định hay Implicit type conversion chính là chương trình lập trình tự hiểu và chuyển đổi kiểu dữ liệu của biến và không cần có sự can thiệp của bất kỳ câu lệnh nào từ lập trình viên. Ép kiểu ngầm định thường được dùng khi người dùng chuyển đổi một biến sang một kiểu dữ liệu tương tự lớn hơn để đảm bảo độ chính xác. Ngoài ra cũng không sợ bị mất hay sai lệnh dữ liệu và chỉ sử dụng khi biết rõ biến đó chứa kiểu dữ liệu tương ứng với kiểu mà người dùng cần chuyển tới.

Ép kiểu ngầm định là việc chương trình lập trình sẽ tự hiểu và chuyển đổi kiểu dữ liệu

Vậy nên, cách ép các kiểu dữ liệu trong C khi người dùng gán một số nguyên bất kỳ cho biến có kiểu dữ liệu là số thực. Hệ thống cũng sẽ tự ngầm định và chuyển số nguyên đó thành số thực mà không cần sự can thiệp của bất kỳ cú pháp hay thuật toán nào. Ví dụ, người dùng án A và B bằng 5, trong đó, A là kiểu số nguyên và B là kiểu số thực. Kết quả là: 

  • A là kiểu số nguyên (int) và số 5 là một số nguyên dương cùng kiểu dữ liệu nên khi xuất kết quả ra màn hình kết quả sẽ là A=5.

  • B là kiểu số thực (float) mà 5 là một số nguyên dương không cùng kiểu dữ liệu nên khi xuất kết quả ra màn hình kết quả sẽ là B=5.0F.

Các trường hợp lỗi ép kiểu dữ liệu trong C thường gặp

Các trường hợp lỗi ép kiểu dữ liệu trong C thường gặp được nhiều người dùng quan tâm như sau:

Trường hợp 1

Lỗi kết quả khi ép kiểu từ một kiểu dữ liệu lớn sang kiểu dữ liệu nhỏ hơn. Khi người dùng gán x là giá trị kiểu số nguyên cho biến C là giá trị kiểu Char có phạm vi -128 đến 127. Vậy nên, khi xuất kết quả ra màn hình, C sẽ mang một giá trị sai hoàn toàn.

Trường hợp 2

Kết quả bị sai lệch khi ép kiểu từ một kiểu số chấm động. Khi gán x là giá trị kiểu double (số thực) cho biến f là giá trị kiểu float tức số thực chấm động. Lúc này f chỉ có thể giữ độ chính xác đến 7 chữ số và còn lại kết quả phía sau đều bị sai lệch.

Kết quả bị sai lệch khi ép kiểu từ một kiểu số chấm động

Lời kết

Cách ép kiểu dữ liệu trong C đang được rất nhiều người dùng đặc biệt quan tâm và áp dụng phổ biến. KHông những thế, các kiểu dữ liệu trong C còn có những đặc điểm nổi bật riêng. Nếu người dùng muốn tìm hiểu thêm về cách ép này, hãy liên hệ ngay với https://aptech.fpt.edu.vn nhé!

Group Leader

Description

học lập trình tại FPT aptech

Privacy

This Group is Open to all EmpowHER.com members