Biến Cục Bộ và Biến Toàn Cục
Trong ngôn ngữ lập trình C/C++, chúng ta thường sử dụng các biến có phạm vi sử dụng khác nhau như biến cục bộ (local variable), biến toàn cục (global variable) và biến tĩnh (static variable). Trên trang web Lập Trình Không Khó, chúng ta sẽ cùng tìm hiểu về các khái niệm này và có những ví dụ minh họa để dễ hiểu hơn.
Video hướng dẫn về phạm vi của biến
Trước khi bước vào nội dung chi tiết, hãy tham khảo video dưới đây để hiểu rõ hơn về biến cục bộ, biến toàn cục và biến tĩnh. Sau đó, bạn có thể tiếp tục đọc bài viết này để có thêm thông tin cần thiết.
Biến Cục Bộ là gì?
Các biến cục bộ (local variable) là các biến được khai báo trong một khối code và chỉ tồn tại trong phạm vi của khối code đó khi khối code đó đang thực thi. Ví dụ, trong một hàm, vòng lặp, cấu trúc if-else, chúng ta có thể khai báo các biến cục bộ.
Nếu chúng ta cố gắng sử dụng biến cục bộ bên ngoài phạm vi của nó, chúng ta sẽ gặp lỗi "biến không được khai báo tại điểm này". Vì vậy, chúng ta cần lưu ý để sử dụng đúng phạm vi của biến cục bộ.
Biến Toàn Cục là gì?
Các biến toàn cục (global variable) là các biến được khai báo bên ngoài tất cả các hàm và có thể sử dụng trong mọi hàm trong chương trình. Biến toàn cục tồn tại cho đến khi chương trình kết thúc.
Ví dụ, chúng ta có thể khai báo biến toàn cục bên ngoài hàm main và sử dụng nó trong các hàm khác. Biến toàn cục giúp chúng ta truyền dữ liệu và sử dụng dễ dàng trong toàn bộ chương trình.
Biến Tĩnh là gì?
Biến tĩnh (static variable) là các biến được khai báo bằng cách sử dụng từ khóa static. Biến tĩnh có thể là biến cục bộ hoặc biến toàn cục và tồn tại cho đến khi chương trình kết thúc.
Một biến tĩnh trong một hàm chỉ được khởi tạo một lần và giá trị của nó được duy trì giữa các lần gọi hàm. Việc sử dụng biến tĩnh có thể giúp chúng ta lưu trữ giá trị trạng thái và sử dụng nó trong các lần gọi hàm tiếp theo.
Biến Register là gì?
Từ khóa register được sử dụng để khai báo các biến có tính chất như biến cục bộ, nhưng được lưu trữ trong thanh ghi của CPU. Do được lưu trữ trong thanh ghi, truy xuất đến biến register sẽ nhanh hơn so với các biến được lưu trữ trong bộ nhớ.
Tuy nhiên, trong lập trình phần mềm thông thường, chúng ta không cần sử dụng biến register. Chúng chỉ cần thiết khi làm việc với các hệ thống nhúng hoặc các chương trình cần tối ưu hiệu năng. Chúng ta cần tối ưu thuật toán trước khi sử dụng biến register để tối ưu hiệu năng.
Tổng kết
Trong bài viết này, chúng ta đã tìm hiểu về biến cục bộ, biến toàn cục, biến tĩnh và biến register trong ngôn ngữ lập trình C/C++. Chúng ta đã có những ví dụ minh họa để hiểu rõ hơn về cách sử dụng và phạm vi của các loại biến này.
Tài liệu tham khảo: