Which of the following gives the memory address of the first element in array arr, an array with 100 elements?
Trả lời:
Đáp án đúng: B
Đáp án đúng là B. arr;
* **arr[0]**: Truy cập vào phần tử đầu tiên của mảng `arr`, trả về *giá trị* của phần tử đó, chứ không phải địa chỉ.
* **arr**: Trong hầu hết các ngữ cảnh, khi sử dụng tên mảng mà không có chỉ số, nó sẽ tự động chuyển đổi thành con trỏ đến phần tử đầu tiên của mảng. Do đó, `arr` tương đương với địa chỉ của `arr[0]`.
* **&arr**: Toán tử `&` lấy địa chỉ của một biến. Trong trường hợp này, `&arr` trả về địa chỉ của *toàn bộ mảng* `arr`. Mặc dù địa chỉ này trùng với địa chỉ của phần tử đầu tiên, nhưng kiểu dữ liệu của nó khác (là con trỏ tới một mảng 100 phần tử), điều này có thể quan trọng trong một số ngữ cảnh nhất định (ví dụ, khi sử dụng con trỏ mảng trong các phép toán con trỏ hoặc khi truyền mảng cho hàm).
* **arr[1]**: Truy cập vào phần tử thứ hai của mảng (chỉ số 1), trả về *giá trị* của phần tử đó, chứ không phải địa chỉ phần tử đầu tiên.
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
