`
yingyingol
  • 浏览: 787011 次
文章分类
社区版块
存档分类
最新评论

一个关于静态局部变量以及全局变量的例子

阅读更多

先看一段代码



程序的执行结果如下:

程序中定义了一个静态局部变量i,以及一个静态全局变量j;它们都在内存的静态存储区,前者作用域为函数体内,其它地方不可见,而后者作用域为定义处到文件结束,其它文件不可见,每次调用fun1都使i的值加1,而每次调用fun2都先将其复制为0,在加1,所以j的值永远都为1.




分享到:
评论

相关推荐

    C++中的局部变量、全局变量、局部静态变量、全局静态变量的区别

    以下是一个全局变量的例子: ```cpp int nData = 10; // 这是一个全局变量,作用域是整个程序 int main() { // ... } ``` 3. 局部静态变量(Local static variables) 局部静态变量结合了局部变量和静态变量的...

    C++中类使用全局变量

    6. **封装**:如果一个变量需要在多个类之间共享,考虑使用静态成员变量或使用指针或引用传递,而不是全局变量。 总之,虽然全局变量在某些情况下可以简化代码,但过度依赖全局变量会导致代码难以理解和维护。在...

    C++中 静态局部变量实例详解

    C++中 静态局部变量实例详解 以前经常使用和了解static作用在全局变量前,以至于甚至把static当做全局变量的代名词...这里的n是一个静态局部变量,只有第一执行fn函数时会调用static n=10,以后都不会调用 有例子使用

    C语言中局部变量和全局变量_等在内存中的存放位置.doc

    "C语言中局部变量和全局变量在内存中的存放位置" C语言中局部变量和全局变量是两种不同的变量类型,它们在内存中的存放位置和作用域范围也不同。了解这两种变量的特点和使用方法是C语言编程的基础。 局部变量是指...

    c代码-考察静态局部变量的值。

    在C语言中,静态局部变量是一个重要的概念,它在函数内部定义,但具有持久的存储属性。本项目通过`main.c`源代码文件对静态局部变量的特性进行了深入的探讨。`README.txt`文件可能包含了关于如何运行和理解代码的...

    PHP static局部静态变量和全局静态变量总结

    2. **仅初始化一次**:静态局部变量只在第一次函数调用时初始化。这意味着,即使你尝试在定义时使用表达式初始化(如`static $var = 1+1;`),PHP也会报错,因为初始化只能用常量或字符值。 3. **默认值**:如果...

    C++ 静态变量的使用,初学C++参考

    当在函数内部声明一个静态局部变量时,它的生命期从首次调用该函数开始,直到程序结束。这意味着,每次函数被调用,静态局部变量的值会保持不变,而不是像普通局部变量那样重新初始化。这使得静态局部变量成为实现...

    GloVar.rar_glovar_全局变量_全局变量管理

    笔记.txt文件可能包含了关于这些主题的详细笔记,包括例子和最佳实践,以帮助理解和有效地管理全局变量。通过深入学习和实践,程序员可以更好地掌握全局变量的使用,从而编写出更加健壮和可维护的代码。

    静态成员变量和静态成员函数

    2. 静态局部变量:这些变量在函数内部定义,但它们的生命周期跨越函数调用。每当函数被调用时,它们的值会被保留,就像有一个隐藏的初始化动作一样。这与非静态局部变量不同,后者在每次函数调用时都会被重新初始化...

    C语言 全局变量和局部变量详解及实例

    在这个例子中,`globalVar` 是一个全局变量,可以在 `main` 函数和 `function` 函数中访问。`localVar` 是一个局部变量,只在 `function` 内部可见。当 `function` 被调用后,`localVar` 的值不会保留在内存中,因此...

    第10章全局变量

    - 函数 `fun(int x[], int n)` 内部有一个静态局部变量 `sum`,在首次调用时初始化为0,在后续调用中保持其上一次的值。 - 主函数中定义了两个数组 `a` 和 `b`,分别调用 `fun` 函数并求和。 **解答步骤:** 1. **...

    2023-04-06-项目笔记 - 第三百二十五阶段 - 4.4.2.323全局变量的作用域-323 -2025.11.22

    此外,静态局部变量是另一个特殊的例子,它的生命周期贯穿整个程序,但它的作用域仍然被限定在声明它的函数内。静态局部变量在函数调用结束后不会被销毁,而是保留上一次的值。这种特性使得静态局部变量可以用来保存...

    C#中static静态变量的用法实例

    静态局部变量在函数或代码块内部定义,但它们并不像常规局部变量那样在每次函数调用时重新创建。相反,它们在全局数据区分配内存,且只初始化一次,通常在首次进入函数时。尽管它们在局部作用域内,但其值在函数多次...

    利用静态变量对函数访问次数计数.zip

    2. 存储位置:静态变量存储在内存的静态存储区,不同于栈上的局部变量和堆上的动态变量。 3. 作用域:对于局部静态变量,其作用域仅限于定义它的函数内部;而对于全局静态变量,其作用域为整个源文件。 现在,让...

    用实际例子学C语言第二版

    书中给出了一个计数器的示例,展示了静态局部变量如何在连续函数调用中保持并增加其值。 接着,书中探讨了静态全局变量的概念。静态全局变量在文件作用域内声明,但其作用域仅限于声明它的文件,其他文件无法访问该...

    面向过程设计中的static静态成员

    面向过程设计中的`static`关键字主要用于定义静态全局变量、静态局部变量和静态函数,这些特性在C++编程中具有特殊的意义。下面将详细介绍这三个方面的内容。 1. 静态全局变量 静态全局变量在全局数据区分配内存,...

    stactspample.rar

    标题中的"stactspample.rar"可能是一个拼写...总之,"stacksample.rar"提供了一个学习C++中静态库和静态局部变量的实战平台,通过解析和运行这个程序,我们可以加深对这两个概念的理解,并将这些知识应用到实际开发中。

    各大IT公司笔试真题汇总_华为面试笔试题目(附答案

    7. 静态全局变量:在给定的例子中,我们可以看到静态全局变量的作用域是局限于一个源文件内的,它可以避免在其它源文件中引起错误。 知识点:静态全局变量、作用域、源文件 8. 静态局部变量:在给定的例子中,我们...

Global site tag (gtag.js) - Google Analytics