Ép kiểu khi gán dữ liệu
Ép kiểu là khi gán dữ liệu này vào dữ liệu khác mà có hai kiểu là khác nhau.
1
2
3
4
|
char a = 97; // gán kiểu int vào kiểu char
int b = 'b'; // gán kiểu char vào kiểu int
double c = 10; // gán kiểu int vào kiểu double
int d = 10.12; // gán kiểu double vào kiểu int
|
Tương tự như vậy có thể ép kiểu lúc gọi hàm.
1
2
3
4
5
6
7
|
int add (int a, int b) {
return a + b;
}
int main() {
// ép các kiểu của tham số từ double về lại kiểu int
add(10.5, 10.5); // -> 20
}
|
Ép kiểu tường minh
Để ép kiểu tường minh hãy sử dụng tên kiểu muốn ép trước biểu thức như sau:
1
2
3
4
5
|
int sum = 17;
int count = 4;
// ép kiểu của sum về dạng double trước khi chia
double mean = ((double) sum) / count; // -> 4.25
|
Một ví dụ khác là ta có thể ép kiểu con trỏ về con trỏ void, và ngược lại.