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

一小时搞定C++_5

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

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

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

 #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++入门 输出Hello World

C++入门 输出Hello World

#include <iostream>using namespace std;int main(){     cout << "Hello, world!...

数据类型及其占用空间

数据类型及其占用空间

#include<iostream> using namespace std; int main() { cout << "The size of int is&nb...

函数声明和使用

函数声明和使用

#include<iostream> using namespace std; int sum(int a,int b);//函数声明  int main() { cout <<&nb...

Break和Continue的区别

Break和Continue的区别

#include<iostream>  using namespace std; int main() { int x=0; for(x=0;x<10;x++) { if(x==3) break;...

数据结构

数据结构

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

C++ 数组的各类性质和用法

C++ 数组的各类性质和用法

#include<iostream>  using namespace std; void addarr(int *k,int len); //文中形如sizeof(x)/sizeof(x[0]) 是用数组占用空...