Kết quả của chương trình sau là gì:
#include
int change(int *a) {
*a = 10;
return *a;
}
void main() {
int i = 5;
change(&i);
printf("%d", i);
}
Trả lời:
Đáp án đúng: B
Chương trình C này sử dụng con trỏ để thay đổi giá trị của một biến. Ban đầu, biến `i` được gán giá trị 5. Sau đó, hàm `change()` được gọi, nhận địa chỉ của `i` làm tham số. Bên trong hàm `change()`, giá trị tại địa chỉ được trỏ bởi con trỏ `a` (tức là giá trị của `i`) được thay đổi thành 10. Do đó, khi `printf()` được gọi trong hàm `main()`, nó in ra giá trị mới của `i`, là 10.