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

一小时搞定C++_5

chanra1n5年前 (2019-11-05)C++4304

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

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

 #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://world.myfpga.cn/index.php/post/42.html

分享给朋友:

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

一小时搞定C++_4

一小时搞定C++_4

 #include <iostream>  using namespace std; int addnum(int a,int b) { return a+b; } int ...

变量作用域

变量作用域

#include<iostream> void print(); int main() { char a=0; for(a=0;a<20;a++) print(); return 0;  }  v...

C和C++中的字符串

C和C++中的字符串

/*C风格字符串的声明和使用  #include<cstdio.h> int main() { char x[]={'H','e','l','l','o','&...

数据结构

数据结构

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