Computer >> Máy Tính >  >> Lập trình >> C ++

Biến cục bộ và biến toàn cục trong C ++ là gì?


Phạm vi là một vùng của chương trình và nói rộng ra thì có ba vị trí, nơi các biến có thể được khai báo -

  • Bên trong một hàm hoặc một khối được gọi là biến cục bộ,
  • Trong định nghĩa của các tham số hàm được gọi là tham số chính thức.
  • Bên ngoài tất cả các hàm được gọi là biến toàn cục.

Các biến cục bộ chỉ có thể được sử dụng bởi các câu lệnh nằm bên trong hàm hoặc khối mã đó. Các biến cục bộ không được biết đến đối với các hàm của riêng chúng.

Ví dụ

#include <iostream>
using namespace std;
int main () {
   // Local variable declaration:
   int a, b;
   int c;

   // actual initialization
   a = 10;
   b = 20;
   c = a + b;

   cout << c;
   return 0;
}

Đầu ra

Điều này sẽ đưa ra kết quả -

30

Các biến toàn cục được định nghĩa bên ngoài tất cả các hàm, thường nằm trên đầu chương trình. Các biến toàn cục sẽ giữ giá trị của chúng trong suốt thời gian tồn tại của chương trình của bạn. Một biến toàn cục có thể được truy cập bởi bất kỳ hàm nào.

Ví dụ

#include <iostream>
using namespace std;
// Global variable declaration:
int g;
int main () {
   // Local variable declaration:
   int a, b;

   // actual initialization
   a = 10;
   b = 20;
   g = a + b;

   cout << g;
   return 0;
}

Đầu ra

Điều này sẽ đưa ra kết quả -

30

Một chương trình có thể có cùng tên cho các biến cục bộ và toàn cục nhưng giá trị của một biến cục bộ bên trong một hàm sẽ được ưu tiên hơn. Để truy cập biến toàn cục với cùng một rame, bạn sẽ phải sử dụng toán tử phân giải phạm vi.

Ví dụ

#include <iostream>
using namespace std;
// Global variable declaration:
int g = 20;
int main () {
   // Local variable declaration:
   int g = 10;

   cout << g;   // Local
   cout << ::g; // Global
   return 0;
}

Đầu ra

Điều này sẽ đưa ra kết quả -

10
20