zoukankan      html  css  js  c++  java
  • C++ 函数的局部变量和静态变量

          函数的局部变量仅当函数被调用时才存在,一旦函数被终止,系统就把局部变量删除。因此,当下一次调用该函数时,不能保留上一次的局部变量的值。函数每次调用时,系统会对局部变量进行初始化。

          函数的静态变量是在局部变量的数据类型前面加上static 关键字。它与局部变量不同,初始化仅能执行一次。当函数终止时将静态变量保存在独立的内存单元中,所以下一次调用该函数时,静态变量能保持它原来的值。可以在不同的函数中使用相同的静态变量名,这不会造成编译器的混淆,因为编译器一直跟踪每个函数的静态变量。

    #include "iostream.h"
    double mean(double x);
    void main()
    {
    double x, y;
    x = mean(1); //第一次调用时为:1/2
    y = mean(1); //第二次调用时为:1/3
    cout<<"x="<<x<<", y="<<y<<endl; //x=0.5, y=0.333333
    }

    double mean(double x)
    {
    static double z, y = 1;
    y = x + y;
    z = x * x;
    return z / y;
    }

  • 相关阅读:
    CrackMe17
    逆向按钮事件定位
    CrackMe20
    CrackMe14
    CrackMe09
    CrackMe08
    分布式事务seata
    SpringBoot自动注入原理初解与实现
    InnoDB事务日志(redo log 和 undo log)详解
    高频面试题:Spring 如何解决循环依赖?
  • 原文地址:https://www.cnblogs.com/xiaocai0923/p/2222087.html
Copyright © 2011-2022 走看看