JavaScript is required

Khai báo nào sau đây là SAI?

A.
char c = “a”;
B.
int i = 75ul;
C.
int i = 0013;
D.
int i = 0x4b
Trả lời:

Đáp án đúng: A


Đáp án A sai vì kiểu `char` trong C/C++ được sử dụng để lưu trữ một ký tự đơn. Khi gán `char c = “a”;`, ta đang cố gắng gán một chuỗi ký tự (string literal) "a" cho một biến kiểu `char`. Chuỗi ký tự "a" bao gồm ký tự 'a' và ký tự null '\0' ở cuối, do đó nó không thể được lưu trữ trong một biến `char`. Để gán ký tự 'a' cho biến `c`, ta phải viết `char c = 'a';`. Các đáp án còn lại đều đúng: - B. `int i = 75ul;`: `ul` là hậu tố chỉ kiểu `unsigned long`, giá trị này có thể gán cho biến `int`. - C. `int i = 0013;`: Số `0013` là biểu diễn số bát phân của số 11, và có thể gán cho biến `int`. - D. `int i = 0x4b`: `0x4b` là biểu diễn số hexa của số 75, và có thể gán cho biến `int`.

Câu hỏi liên quan