C++ Primer(第5版) 练习 6.6
练习 6.6 说明形参、局部变量以及局部静态变量的区别。编写一个函数,同时用到这三种形式。
环境:Linux Ubuntu(云服务器)
工具:vim
代码块
/*************************************************************************> File Name: ex6.6.cpp> Author: > Mail: > Created Time: Tue 13 Feb 2024 09:37:41 AM CST************************************************************************/#include<iostream>
using namespace std;int fact(int n){static int count = 0;return ++count * n;
}int main(){int num;cout<<"Enter number: ";cin>>num;for(int i = 0; i < num; i++){cout<<fact(num)<<endl;}return 0;
}
运行结果显示如下
解释
形参是函数题内部定义的变量,只作用于函数内部,生命周期随函数调用开始,随函数结束而销毁。
局部变量作用与该变量位于的块内,声明周期随块的结束而结束。
局部静态变量在函数创建便初始化,不随函数调用结束而结束,而是随着函数所在块的结束而结束。