Câu lệnh If else trong C++ | Học C++ cơ bản
Câu lệnh If else trong C++ | Học C++ cơ bản

Một biến là một tên được liên kết với một giá trị có thể thay đổi được. Ví dụ khi tôi viết int num=20;ở đây tên biến là num được liên kết với giá trị 20, int là kiểu dữ liệu đại diện rằng biến này có thể chứa các giá trị nguyên. Chúng tôi sẽ đề cập đến các kiểu dữ liệu trong hướng dẫn tiếp theo. Trong hướng dẫn này, chúng ta sẽ thảo luận về các biến.

Các biến trong C ++ | Học C++ cơ bản
Các biến trong C ++ | Học C++ cơ bản

Cú pháp khai báo một biến trong C ++

data_type variable1_name = value1 , variable2_name = value2;

Ví dụ:

int num1 = 20 , num2 = 100;

Chúng ta cũng có thể viết nó như thế này:

int num1 , num2 ; 
num1 = 20 ; 
num2 = 100 ;

Các loại biến

Các biến có thể được phân loại dựa trên kiểu dữ liệu của chúng. Ví dụ, trong ví dụ trên, chúng ta đã thấy các biến kiểu số nguyên. Sau đây là các loại biến có sẵn trong C ++.

int : Loại biến này giữ giá trị nguyên.

char : giữ giá trị ký tự như ‘c’, ‘F’, ‘B’, ‘p’, ‘q’, v.v.

bool : giữ giá trị boolean đúng hoặc sai.

double : giá trị dấu chấm động chính xác kép.

float : Giá trị dấu chấm động chính xác đơn.

Các loại biến dựa trên phạm vi của chúng

Trước khi đi sâu hơn, hãy thảo luận về phạm vi là gì trước. Khi chúng ta thảo luận về Chương trình Hello World , chúng ta đã thấy các dấu ngoặc nhọn trong chương trình như sau:

int main {

// Một số mã

}

Bất kỳ biến nào được khai báo bên trong các dấu ngoặc nhọn này đều có phạm vi giới hạn trong các dấu ngoặc nhọn này, nếu bạn khai báo một biến trong hàm main () và cố gắng sử dụng biến đó bên ngoài hàm main () thì bạn sẽ gặp lỗi biên dịch.

Bây giờ chúng ta đã hiểu phạm vi là gì. Hãy chuyển sang các loại biến dựa trên phạm vi.

1. Biến toàn cục
2. Biến cục bộ

Biến toàn cầu

Một biến được khai báo bên ngoài bất kỳ hàm nào (bao gồm cả hàm chính) được gọi là biến toàn cục. Các biến toàn cục có phạm vi trong suốt chương trình, chúng có thể được truy cập ở bất kỳ đâu trong chương trình, trong main, trong hàm do người dùng định nghĩa, ở bất kỳ đâu.

Hãy lấy một ví dụ để hiểu nó:

Ví dụ về biến toàn cục

Ở đây chúng ta có một biến toàn cục myVar, được khai báo bên ngoài main. Chúng tôi đã truy cập biến hai lần trong hàm main () mà không gặp vấn đề gì.

#include <iostream> using namespace std ; // Đây là một biến toàn cục char myVar = 'A' ; int main () { 
   cout << "Giá trị của myVar:" << myVar << endl ; 
   myVar = 'Z' ; 
   cout << "Giá trị của myVar:" << myVar ; trả về 0 ; }

Biến cục bộ

Các biến cục bộ được khai báo bên trong dấu ngoặc nhọn của bất kỳ hàm do người dùng định nghĩa, hàm chính, vòng lặp hoặc bất kỳ câu lệnh điều khiển nào (if, if-else, v.v.) và có phạm vi giới hạn bên trong các dấu ngoặc nhọn đó.

Ví dụ về biến cục bộ

#include <iostream> using namespace std ; 
 

char myFuncn () { // Đây là một biến cục bộ char myVar = 'A' ; } int main () { 
   cout << "Giá trị của myVar:" << myVar << endl ; 
   myVar = 'Z' ; 
   cout << "Giá trị của myVar:" << myVar ; trả về 0 ; }

Đầu ra:
Lỗi thời gian biên dịch, vì chúng tôi đang cố gắng truy cập biến myVarbên ngoài phạm vi của nó. Phạm vi của myVarđược giới hạn trong cơ thể của hàm myFuncn(), bên trong những mắc cài đó.

Biến cục bộ và cục bộ có thể có cùng tên trong C ++ không?

Hãy xem một ví dụ có cùng tên toàn cục và biến cục bộ.

#include <iostream>
using namespace std;
// This is a global variable
char myVar = 'A';
char myFuncn() {
   // This is a local variable
   char myVar = 'B';
   return myVar;
}
int main()
{
   cout <<"Funcn call: "<< myFuncn()<<endl;
   cout <<"Value of myVar: "<< myVar<<endl;
   myVar='Z';
   cout <<"Funcn call: "<< myFuncn()<<endl;
   cout <<"Value of myVar: "<< myVar<<endl;
   return 0;
}

Đầu ra:

Funcn call: B
Value of myVar: A
Funcn call: B
Value of myVar: Z

Như bạn có thể thấy rằng khi tôi thay đổi giá trị của myVartrong hàm main, nó chỉ thay đổi giá trị của biến toàn cục myVarvì myVarphạm vi biến cục bộ bị giới hạn trong hàm myFuncn().

LEAVE A REPLY

Please enter your comment!
Please enter your name here