[C++ Cơ bản] Phần 6: Biến global và biến local

Thứ tư - 07/04/2021 01:11
Ta định nghĩa scope (phạm vi) là các khu vực của một chương trình. Các biến của chương trình C++ có thể được định nghĩa tại 3 vị trí:
[C++ Cơ bản] Phần 6: Biến global và biến local
Phần trước: [C++ Cơ bản] Phần 5: Biến và kiểu dữ liệu
  • Bên trong một khối lệnh (ví dụ như hàm int main() của chương trình). Các biến như vậy được gọi là biến local (local variable, nhiều tài liệu sẽ dịch là biến địa phương).
  • Trong phần định nghĩa của một hàm. Các biến như vậy được gọi là tham số của hàm đó (parameter).
  • Ở bên ngoài tất cả các hàm. Các biến như vậy được gọi là biến global (global variable, nhiều tài liệu sẽ dịch là biến toàn cục).

Hàm, chương trình con và tham số của hàm sẽ được trình bày trong một bài viết khác. Trọng tâm của bài viết này là về biến global và local.

Biến local

Biến local được định nghĩa trong một khối lệnh, và chỉ tồn tại bên trong khối lệnh đó. Khi khối lệnh được thực hiện xong thì biến local cũng sẽ biến mất. Biến local cũng không thể truy cập được từ bên ngoài khối lệnh của nó.


Biến global

Biến global được định nghĩa bên ngoài các khối lệnh. Biến global có thể được định nghĩa ở bất cứ vị trí nào trong chương trình (tất nhiên, bên ngoài khối lệnh), tuy nhiên thường ta quy chuẩn đặt chúng ở đầu chương trình. Chúng sẽ giữ nguyên giá trị của mình trong suốt quá trình chạy của chương trình, và tất cả các hàm hay chương trình con của chương trình đều có thể truy cập vào chúng.

Trong một chương trình, ta có thể khai báo những biến local và global trùng tên nhau. Khi ta truy cập vào tên của chúng, biến local sẽ được sử dụng trong hàm mà nó được định nghĩa.


Output:

20

Giá trị mặc định của các biến

Khi một biến local được khởi tạo, chương trình C++ sẽ lấy một ô nhớ bất kỳ của hệ thống để dành cho nó. Điều này dẫn tới việc biến local không có giá trị mặc định cụ thể, và ta bắt buộc phải tự tay đặt giá trị cho chúng.

Khi một biến global được khởi tạo, tất cả các bit biểu diễn của nó sẽ có giá trị bằng 0. Điều này có nghĩa là:

  • Các kiểu biến số có giá trị đều bằng 0
  • Các kiểu chữ cái sẽ có giá trị đều bằng kí tự '\0' (kí tự null)
  • Các con trỏ đều có địa chỉ NULL (sẽ nói trong các bài sau)
  • Vân vân…

Tuy nhiên, việc khởi tạo các biến một cách hợp lệ vẫn là một điều nên làm, để tránh việc các tác nhân bên ngoài (ví dụ: một bộ dịch không theo quy chuẩn này) có thể làm ảnh hưởng tới chương trình.

Phần sau: [C++ Cơ bản] Phần 7: Input - Output

Tác giả bài viết: Thanh Sơn

Nguồn tin: cowboycoder.tech

Tổng số điểm của bài viết là: 0 trong 0 đánh giá

Click để đánh giá bài viết

  Ý kiến bạn đọc

BẢN ĐỒ HÀNH CHÍNH
tkb
camera thanh son 2
THƯ VIỆN ẢNH
1-1.jpg 3-2.jpg 3-13.jpg 33.jpg 4-5.jpg
THĂM DÒ Ý KIẾN

Đánh giá của bạn về website này?

CƠ QUAN BÁO CHÍ
DANH SÁCH TRƯỜNG ĐẠI HỌC - HỌC VIỆN
THỐNG KÊ
  • Đang truy cập11
  • Hôm nay1,336
  • Tháng hiện tại26,394
  • Tổng lượt truy cập920,700
Bạn đã không sử dụng Site, Bấm vào đây để duy trì trạng thái đăng nhập. Thời gian chờ: 60 giây