Sử dụng cách truyền nào trong hàm sẽ không làm thay đổi giá trị của biến trong chương trình chính?
Trả lời:
Đáp án đúng: A
Trong lập trình, khi truyền tham số vào một hàm, có hai cách chính: truyền bằng trị (call by value) và truyền bằng tham chiếu (call by reference).
- Truyền bằng trị (Call by value): Khi truyền bằng trị, một bản sao của giá trị biến được tạo ra và truyền vào hàm. Do đó, mọi thay đổi đối với tham số bên trong hàm sẽ chỉ ảnh hưởng đến bản sao này, và không làm thay đổi giá trị của biến gốc trong chương trình chính.
- Truyền bằng tham chiếu (Call by reference): Khi truyền bằng tham chiếu (trong C/C++ thường dùng con trỏ để thể hiện việc này, tức là 'truyền bằng địa chỉ'), hàm nhận được trực tiếp địa chỉ của biến gốc. Do đó, mọi thay đổi đối với tham số bên trong hàm sẽ trực tiếp tác động lên biến gốc trong chương trình chính.
Như vậy, truyền bằng trị sẽ không làm thay đổi giá trị của biến trong chương trình chính.
Do đó, đáp án A đúng. Đáp án B sai. Đáp án C đúng vì bao gồm cả A và B, nhưng vì B sai nên C sai. Đáp án D sai vì A đúng.





