Chuyển đổi kiểu ngầm được trình biên dịch thực hiện bằng cách chuyển kiểu dữ liệu nhỏ hơn sang kiểu lớn hơn.
Ví dụ, mã ASCII của A = 65.
Trong chương trình này, ta cho ký tự 'A' làm đầu vào, viết code chuyển A thành 65 là mã ASCII.
Ví dụ
Ví dụ tìm mã ASCII của 'A' dùng chuyển đổi ngầm:
#include <stdio.h>
int main() {
char character = 'A';
int number = 0, value;
value = character + number; // chuyển đổi ngầm
printf("Ma ASCII cua A la: %d\n", value);
return 0;
}
Kết quả
Mã ASCII của 'A' là 65. Dùng ép kiểu trong C, trình biên dịch tự động chuyển ký tự char sang int, biểu thức (value = character + number) thành 65 + 0 = 65.
Do đó đầu ra là 65.
Ma ASCII cua A la: 65
Ví dụ
Xét ví dụ khác với ký tự khác:
#include <stdio.h>
int main() {
char character = 'P';
int number = 0, value;
value = character + number; // chuyển đổi ngầm
printf("Ma ASCII cua P la: %d\n", value);
return 0;
}
Kết quả
Mã ASCII của 'P' là 80. Biểu thức (value = character + number) thành 80 + 0 = 80.
Đầu ra là 80.
Ma ASCII cua P la: 80