Nếu có khai báo. Câu nào sẽ đúng:
char * ptr;
char msg[10]
char v;
char * ptr;
char msg[10]
char v;
Trả lời:
Đáp án đúng: B
Câu hỏi kiểm tra sự hiểu biết về con trỏ và mảng trong C.
* `char *ptr;` khai báo một con trỏ `ptr` trỏ đến một vùng nhớ chứa kiểu dữ liệu `char`.
* `char msg[10];` khai báo một mảng `msg` gồm 10 phần tử kiểu `char`. Tên mảng `msg` trong nhiều ngữ cảnh (như trong câu hỏi này) có thể được sử dụng như một con trỏ đến phần tử đầu tiên của mảng.
* `char v;` khai báo một biến `v` kiểu `char`.
**Phân tích các lựa chọn:**
* **A. `ptr = v;`**
* Sai. `ptr` là một con trỏ (địa chỉ), trong khi `v` là một biến kiểu `char` (giá trị). Không thể gán một giá trị `char` cho một con trỏ `char *`. Cần phải lấy địa chỉ của `v` bằng toán tử `&` (ví dụ: `ptr = &v;`).
* **B. `ptr = msg;`**
* Đúng. `msg` là tên của mảng, và trong biểu thức này, nó tự động chuyển đổi thành một con trỏ đến phần tử đầu tiên của mảng (tức là địa chỉ của `msg[0]`). Vì vậy, chúng ta đang gán một địa chỉ (con trỏ) cho con trỏ `ptr`, điều này hợp lệ.
* **C. Cả hai câu đều đúng**
* Sai. Vì A sai.
* **D. Cả hai câu đều sai**
* Sai. Vì B đúng.
Vậy đáp án đúng là B.
Tổng hợp 600+ câu hỏi trắc nghiệm lập trình C 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

FORM.08: Bộ 130+ Biểu Mẫu Thống Kê Trong Doanh Nghiệp

FORM.07: Bộ 125+ Biểu Mẫu Báo Cáo Trong Doanh Nghiệp

FORM.06: Bộ 320+ Biểu Mẫu Hành Chính Thông Dụng

FORM.05: Bộ 330+ Biểu Mẫu Thuế - Kê Khai Thuế Mới Nhất

FORM.04: Bộ 240+ Biểu Mẫu Chứng Từ Kế Toán Thông Dụng
