C ++中的变量,它们的类型和作用域

C ++中的每个变量都有一个特定的类型,该类型确定变量的内存大小和布局。可以存储在该内存中的值的范围;以及可以应用于该变量的一组操作。我们使用表示法声明变量-

type variableName;

类型可以是原始类型(int,bool,float,char等),枚举类型,指向另一种类型的指针或由数据结构或类定义的更复杂的类型。

可变范围

作用域是程序的一个区域,从广义上讲,可以在三个地方声明变量-

  • 在一个称为局部变量的函数或块中,

  • 在功能参数的定义中称为形式参数。

  • 在所有称为全局变量的函数之外。

局部变量只能由该函数或代码块内的语句使用。局部变量本身并不为函数所知。 

示例

#include <iostream>
using namespace std;
int main () {
   //局部变量声明:
   int a, b;
   int c;

   //实际初始化
   a = 10;
   b = 20;
   c = a + b;
 
   cout << c;
   return 0;
}

输出结果

这将给出输出-

30

全局变量是在所有函数之外定义的,通常在程序顶部。全局变量将在程序的整个生命周期内保持其值。全局变量可以由任何函数访问。 

示例

#include <iostream>
using namespace std;
 
//全局变量声明:
int g;
 
int main () {
   //局部变量声明:
   int a, b;
 
   //实际初始化
   a = 10;
   b = 20;
   g = a + b;
 
   cout << g;
   return 0;
}

输出

这将给出输出-

30

程序的局部变量和全局变量可以具有相同的名称,但是函数内局部变量的值将优先。要使用相同的值访问全局变量,必须使用范围解析运算符。 

示例

#include <iostream>
using namespace std;
 
//全局变量声明:
int g = 20;
 
int main () {
   //局部变量声明:
   int g = 10;
 
   cout << g;   // Local
   cout << ::g; // Global
   return 0;
}

输出

这将给出输出-

10
20