28.4. Có thể khai báo một biến bên trong hàm trùng tên với biến đã khai báo trước đó bên ngoài hàm...
Câu hỏi:
28.4. Có thể khai báo một biến bên trong hàm trùng tên với biến đã khai báo trước đó bên ngoài hàm không?
Câu trả lời:
Người trả lời: GV. Đỗ Hồng Hạnh
Cách 1: Để khai báo một biến bên trong hàm trùng tên với biến đã khai báo trước đó bên ngoài hàm, bạn chỉ cần đặt một tên biến giống nhau. Khi đó, biến bên trong hàm sẽ được ưu tiên sử dụng trước, và biến bên ngoài hàm sẽ không bị ảnh hưởng.Ví dụ:```cpp#include int x = 5; // Biến x bên ngoài hàmvoid test() { int x = 10; // Biến x bên trong hàm std::cout << "Gia tri cua x ben trong ham: " << x << std::endl;}int main() { test(); std::cout << "Gia tri cua x ben ngoai ham: " << x << std::endl; return 0;}```Kết quả sẽ là:```Gia tri cua x ben trong ham: 10Gia tri cua x ben ngoai ham: 5```Cách 2:Để tránh sự nhầm lẫn giữa biến bên trong và biến bên ngoài, bạn có thể sử dụng phạm vi (scope) cho biến bên trong hàm bằng cách sử dụng dấu ngoặc nhọn `{}`.Ví dụ:```cpp#include int x = 5; // Biến x bên ngoài hàmvoid test() { int x = 10; // Biến x bên trong hàm { int x = 15; // Biến x trong phạm vi nhỏ hơn std::cout << "Gia tri cua x ben trong pham vi nho hon: " << x << std::endl; } std::cout << "Gia tri cua x ben trong ham: " << x << std::endl;}int main() { test(); std::cout << "Gia tri cua x ben ngoai ham: " << x << std::endl; return 0;}```Kết quả sẽ là:```Gia tri cua x ben trong pham vi nho hon: 15Gia tri cua x ben trong ham: 10Gia tri cua x ben ngoai ham: 5```Câu trả lời cho câu hỏi "Có thể khai báo một biến bên trong hàm trùng tên với biến đã khai báo trước đó bên ngoài hàm không?" là: Có, có thể khai báo một biến bên trong hàm trùng tên với biến đã khai báo trước đó bên ngoài hàm, nhưng để tránh sự nhầm lẫn, bạn có thể sử dụng phạm vi cho biến bên trong hàm.
Câu hỏi liên quan:
- 28.1. Đoạn chương trình sau có lỗi không? Nếu không kết quả lệnh print() sẽ in ra số nào?def f(x...
- 28.2. Đoạn chương trình sau có lỗi không? Nếu không kết quả lệnh print() sẽ in ra số nào?def...
- 28.3. Trong Python biến được khai báo và sử dụng bên trong một hàm được gọi là gì?A. Biến địa...
- 28.5. Khi khai báo hàm có tham số, các tham số này có thể coi là một biến địa phương của hàm hay...
- 28.6. Đoạn chương trình sau có lỗi không?m, n = 10, 4def f(a): n = n + m +...
- 28.7. Đoạn chương trình sau có lỗi không?m, n = 10, 4def f(a): k = n + m...
- 28.8. Đoạn chương trình sau sẽ in ra giá trị gì?def f(s): m =...
- 28.9. Mệnh đề nào dưới đây phát biểu sai về phạm vi tác dụng của biến trong Python?A. Biến được...
- 28.10. Chương trình sau có lỗi không? Nếu có, làm thế nào để sửa hết lỗi?def f(): ...
- 28.11. Viết hàm với đầu vào là list A, số thực x. Hàm cần trả về một list B thu được từ list A bằng...
- 28.12. Viết chương trình thực hiện các công việc sau, yêu cầu thực hiện lần lượt các công việc, mỗi...
Bình luận (0)