C++自动变量
C++中自动变量用关键字auto作存储类别的声明,C++中绝大多数变量属于自动变量。
C++函数中的局部变量,如果没有用关键字static声明,编译系统对它们是动态地分配存储空间的。函数的形参和在函数中定义的变量都属此类。
在调用该函数时,系统给形参和函数中定义的变量分配存储空间,数据存储在动态存储区中,在函数调用结束时就自动释放这些空间。
如果是在复合语句中定义的变量,则在变量定义时分配存储空间,在复合语句结束时自动释放空间。
存储类别auto和数据类型int的顺序任意。关键字auto可以省略,如果不写auto,则系统把它默认为自动存储类别,它属于动态存储方式。
经典案例:C++实现用自动变量定义整型数据并输出。
源码分析:
#include<iostream>//头文件
using namespace std;//命名空间
int main() //主函数
{
auto int num1;//定义自动整型变量
int num2;//定义整型变量
num1=10;//给num1赋初值
num2=20;//给num2赋初值
cout<<num1<<endl; //输出num1的值
cout<<"------"<<endl; //中间加一条线
cout<<num2<<endl; //输出num2的值
return 0; //函数返回值为0
}
编译后的结果:
10
------
20
--------------------------------
Process exited after 0.08171 seconds with return value 0
请按任意键继续. . .
文章来源: zhuanlan.zhihu.com,作者:,版权归原作者所有,如需转载,请联系作者。
原文链接:zhuanlan.zhihu.com/p/326709637