JavaScript is required

Câu lệnh nào sau đây sẽ KHÔNG phát sinh ra lỗi biên dịch?

A.

char your_char = "int";

B.

char what_char = "L"

C.

char ok = '\u3456';

D.

char what = ''Hello''

Trả lời:

Đáp án đúng: C


Phân tích các phương án:

  • Phương án 1: char your_char = "int"; Trong C/C++, kiểu char dùng để lưu trữ một ký tự duy nhất. Dấu nháy kép " được sử dụng để khai báo chuỗi (string), không phải ký tự (character). Vì vậy, việc gán một chuỗi ("int") cho một biến kiểu char là sai và sẽ gây ra lỗi biên dịch.
  • Phương án 2: char what_char = "L" Tương tự như phương án 1, sử dụng dấu nháy kép " để khai báo một chuỗi, ngay cả khi chuỗi chỉ chứa một ký tự. Gán một chuỗi cho biến kiểu char là sai và gây ra lỗi.
  • Phương án 3: char ok = '\u3456'; Đây là cách khai báo một ký tự Unicode bằng mã hex. \u được sử dụng để biểu diễn một ký tự Unicode. Trong trường hợp này, mã Unicode 3456 là hợp lệ và có thể được gán cho một biến kiểu char. Do đó, câu lệnh này sẽ không gây ra lỗi biên dịch.
  • Phương án 4: char what = ''Hello'' Cách sử dụng dấu nháy đơn không đúng. Trong C/C++, dấu nháy đơn được sử dụng để bao quanh *một* ký tự, chứ không phải một chuỗi. Hơn nữa, việc lặp lại dấu nháy đơn như trên (''Hello'') không hợp lệ và sẽ gây ra lỗi biên dịch.

Kết luận:

Chỉ có phương án 3 là đúng cú pháp và không gây ra lỗi biên dịch.

Tổng hợp 350 câu hỏi trắc nghiệm môn lập trình mạng có đáp án đầy đủ nhằm giúp các bạn dễ dàng ôn tập lại toàn bộ các kiến thức.


50 câu hỏi 60 phút

Câu hỏi liên quan