当前位置:首页 > Software > C++ > 正文内容

一小时搞定C++_5

chanra1n6年前 (2019-11-05)C++4773

讲到函数就可以讲讲局部变量和全局变量了,

什么是局部变量呢?什么又是全局变量?

 #include <iostream> 
using namespace std;
int x,y,z;//x,y,z是全局变量 
int addnum(int a,int b)//a,b是局部变量,也是参数
{
	return a+b;
}
int main()  
{ 
	int num1,num2;//num1,num2是局部变量 
	num1=5;
	num2=10;
    cout << addnum(num1,num2);
    return 0;
 }

一句话原理:在函数体内定义的变量就是局部变量,在函数体之外定义的就是全局变量

局部变量和全局变量有什么性质呢?

局部变量只能在定义它的那个函数体内使用,全局变量可以在整个C++程序中的任何地方使用!

不听不听,我不听!

让我们看看,倘若我偏要在别的函数内使用局部变量会什么样?

image.png

image.png

会报错,你的程序无法运行!

所以请大家务必注意,全局变量和局部变量的使用

最后一点:局部变量在每次函数调用的时候都会被定义,而在函数运行完成后被销毁,也就是说局部变量会随着所在函数的产生而产生,销毁而销毁。

如果想不销毁怎么办?

 #include <iostream> 
using namespace std;
int x,y,z;//x,y,z是全局变量 
int addnum(int a,int b)//a,b是局部变量 
{
	static int d=0,c=0;
	d=d+1;
	c=c+2;
	return a+b+c+d;
}
int main()  
{ 
	int num1,num2;//num1,num2是局部变量 
	num1=5;
	num2=10;
    cout << addnum(num1,num2);
    cout << addnum(num1,num2);
    cout << addnum(num1,num2);
    return 0;
 }

很简单,在你不想让局部变量初始化的变量声明前面加上 static 就行了!

扫描二维码推送至手机访问。

版权声明:本文由我的FPGA发布,如需转载请注明出处。

本文链接:https://myfpga.cn/index.php/post/42.html

分享给朋友:

“一小时搞定C++_5” 的相关文章

一小时搞定C++_2

一小时搞定C++_2

变量是什么?变量就是可以储存值的量,分为局部变量和全局变量,等用到了再说!变量有什么类型?1、int类型 整数类型,只能用来保存整数2、long类型 长整数类型,只能用来保存整数,但是保存的数的范围更多3、float类型 浮点数类型,绝大多数,带小数的4、double类型 双精度浮点数类型,绝大多数...

一小时搞定C++_9

一小时搞定C++_9

什么是数组呢?顾名思义,一组数,不一定是数,也可以是char类型的字符组(我自己给char类型数组起的名字)怎么创建数组呢?int 数组名[数组成员数]; int a[3];我就创建了一个叫做a的整数数组,数组中包含3个数,我应该怎么修改a数组的值呢?a[0]=1; a[1]...

数据结构

数据结构

#include<iostream> using namespace std; struct books{ char name[10]; int num; float price; }book; int&nb...