39.【C/C++ 全局变量和局部变量 (详解)】

简介: 39.【C/C++ 全局变量和局部变量 (详解)】

(一)、什么是全局变量

全局变量也称外部变量,是编程中的一种术语,对象函数是在外部定义变量,也可以在程序任何地方进行创建,当然也可以是程序和对象进行引用。

(二)、全局变量的定义

1.类外定义

#include <iostream>
using namesapce std;
int a=3;
int main()
{}

2.静态定义

#incldue <iostream>
using namespace std;
static int a=3;
int main()
{}

3.宏定义

#incldue <iostream>
using namespace std;
#define PI 3.1415962
int main().{}

(三)、全局变量的访问

::变量名
代码展示
#include <iostream>
using namespace std;
int a = 10;
int main()
{
 int a = 3;
 cout << "局部变量a的值是:" << a << endl;
 ::a;
 cout << "全局变量a的值是:" << ::a << endl;
 int c;
 c=(a += a);
 cout << "局部变量a的和为:" << c << endl;
 int d;
 d = (a += ::a);
 cout << "改变后的局部变量a(即做了加法后)与全局变量a的和为:" << d << endl;
 return 0;
}
效果展示:

(四)、全局变量和局部变量

当全局变量与局部变量同名时:在定义局部变量的子程序内,局部变量起作用:在其它地方全局变量起作用.

①【定义一个局部不同名,一个局部同名。不同函数体】

代码展示:
#include<iostream>
using namespace std;
int a = 0;
void fun1()
{
 int b = 3; //定义不同名局部变量
 a += 5+b;
}
void fun2()
{
 int a = 0; //定义同名局部变量.
 a += 10;
}
int main()
{
 cout << a << endl;
 fun1();
 cout << a << endl;
 fun2();
 cout << a << endl;
 return 0;
}
效果展示:

②【定义一个局部不同名,一个局部同名。同一个函数体】

代码展示
#include<iostream>
using namespace std;
int a = 0;
void fun1()
{
 a += 5;
}
void fun2()
{
 int a = 0; //定义同名局部变量.
 int b = 3; //定义不同名局部变量
 a += 10+b;
}
int main()
{
 cout << a << endl;
 fun1();
 cout << a << endl;
 fun2();
 cout << a << endl;
 return 0;
}

效果展示:

完结!!!!! 如有不解,可私聊


相关文章
|
1月前
|
编译器 C++
c++关于命名空间内变量和函数及全局变量的使用和作用域
c++关于命名空间内变量和函数及全局变量的使用和作用域
49 1
|
7月前
|
存储 Cloud Native Linux
C++ namespace对全局变量屏蔽的工程化意义解读
C++ namespace对全局变量屏蔽的工程化意义解读
|
8月前
|
存储
C++-静态局部变量
C++-静态局部变量
|
1月前
|
存储 程序员 C++
C++程序局部变量:生命周期与作用域的探讨
C++程序局部变量:生命周期与作用域的探讨
26 1
|
1月前
|
存储 C++
C++程序全局变量:理解与应用
C++程序全局变量:理解与应用
28 0
|
1月前
|
存储 缓存 安全
【C/C++ 关键字 存储类说明符 】 线程局部变量的魔法:C++ 中 thread_local的用法
【C/C++ 关键字 存储类说明符 】 线程局部变量的魔法:C++ 中 thread_local的用法
46 0
|
7月前
|
C语言 C++
07 C++ - 全局变量检测增强(比较C语言)
07 C++ - 全局变量检测增强(比较C语言)
42 0
|
11月前
|
C语言 C++ iOS开发
iOS中C++静态全局变量的动态初始化时序
一个由于C++初始化失败导致Realm初始化失败的Crash
153 1
|
C++
【C++】局部变量和全局变量
有关C++局部变量和全局变量的记录
104 0
【C++】局部变量和全局变量
|
C++ 索引
C++ 在函数中使用静态局部变量,让函数返回数组
C++ 在函数中使用静态局部变量,让函数返回数组
223 0
C++ 在函数中使用静态局部变量,让函数返回数组