`

C中Static修饰符的作用是什么?

阅读更多
有三个作用。

1. 隐藏
   当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。
   Static可以用作函数和变量的前缀,对于函数来讲,static的作用仅限于隐藏,而对于变量,
   static还有下面两个作用。

2. 保持变量内容的持久
   存储在静态数据区的变量会在程序刚开始运行时就完成初始化,也是唯一的一次初始化。共有
   两种变量存储在静态存储区:全局变量和static变量,只不过和全局变量比起来,static可以
   控制变量的可见范围,说到底static还是用来隐藏的。

3. 默认初始化为0
   其实全局变量也具备这一属性,因为全局变量也存储在静态数据区。在静态数据区,内存中所
   有的字节默认值都是0x00,某些时候这一特点可以减少程序员的工作量。
分享到:
评论

相关推荐

    C语言中的类型修饰符

    本文将详细介绍C语言中的三种重要类型修饰符:`const`、`static` 和 `volatile`。 #### 二、`const`修饰符详解 `const`修饰符主要用于声明一个或多个变量为常量,即一旦赋值之后,其值不能被修改。`const`修饰符...

    Java访问修饰符

    native 方法访问修饰符表示定义的方法在类中没有实现,而大多数情况下该方法的实现是用 C、C++ 编写的。 synchronized 方法访问修饰符 synchronized 方法访问修饰符表示多线程的支持,当一个此方法被调用时,没有...

    c语言面试经常提问到的几个修饰符

    static:修饰符:修饰变量,函数。作用域:变量仅仅在本文件可见,函数在本文件可以被调用。static在函数内部定义的话,分配在堆中,数值保存在data段,而不是在栈中,而且只赋值一次。 extern:修饰符:修饰变量,...

    java修饰符介绍

    以上就是Java中主要的修饰符及其作用,理解并熟练运用这些修饰符是编写高质量、安全、可维护的Java代码的关键。在实际编程中,合理选择和组合这些修饰符可以帮助我们更好地控制代码的结构和行为。

    auto、register、static、extern等存储类修饰符的区别.

    通过以上分析,我们可以看出`auto`、`register`、`static`和`extern`这些存储类修饰符在C语言中扮演着重要角色,它们不仅控制着变量的生存周期,还决定了变量的可见性和访问范围。合理地使用这些修饰符可以提升代码...

    C/C++中static,const,inline三种关键字详细总结

    一、关于staticstatic 是C++中很常用的修饰符,它被用来控制变量的存储方式和可见性,下面我将从 static 修饰符的产生原因、作用谈起,全面分析static 修饰符的实质。 static 的两大作用: 一、控制存储方式 static...

    c++中的static修饰符示例详解

    本文主要给大家介绍了关于c++中static修饰符的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 下面一段是引用自effective c++ 中的一句话: 所谓的static对象,其寿命是从构造出来到...

    关于Java中各种修饰符与访问修饰符的说明

    本篇文章将详细介绍Java中的各种修饰符和访问修饰符。 1. **类的访问修饰符** - `public`:任何类都可以访问声明为`public`的类,但此类必须定义在和类名相同的同名文件中。 - `package`(默认):如果省略访问...

    extern_volatile等修饰符的用法

    static修饰符用于声明静态变量或静态成员函数。 1. 静态变量 静态变量的作用范围在一个文件内,程序开始时分配空间,结束时释放空间,默认初始化为0,可以被修改。 2. 函数内部的静态变量 函数内部的静态变量...

    Java修饰符总结

    在Java中,某些修饰符可以组合使用,如`public static`、`protected final`等,以达到更精细的控制效果。例如,`public static`方法表示该方法是公共的且与类实例无关,而`protected final`变量则表示受保护的且不可...

    Java修饰符demo

    在Java编程语言中,修饰符是用来限制或指定类、接口、方法、变量等的访问权限和性质的关键字。本文将深入探讨Java修饰符的基础知识,包括访问修饰符、非访问修饰符以及它们在实际编程中的应用。 首先,我们来看访问...

    java常用修饰符.doc

    3. **静态修饰符(static)**:static修饰符用于声明静态成员(类变量和静态方法),它们属于类本身,而不是类的实例。这意味着可以在没有类实例的情况下访问静态成员。 4. **本地修饰符(native)**:native用于...

    C语言static修饰函数详细解析

    在C语言中,`static` 关键字是一个非常重要的存储类修饰符,它可以用来修饰变量和函数,赋予它们特殊的属性。下面将详细解析`static`修饰函数时的含义和用法。 1. 隐藏作用(内部链接) 当`static`关键字用于修饰...

    java修饰符总结

    Java修饰符是编程中至关重要的概念,它们用来控制代码的可见性和行为。下面是对Java修饰符的详细总结: 1. **类(class)可见性修饰符**: - `public`:类对所有类都是可见的,无论是否在同一包内,可以被导入。 ...

    SCJP java基础修饰符

    从给定的文件信息来看,我们深入探讨了Java语言中重要的修饰符概念,这些修饰符在编程中扮演着关键角色,它们控制着类、方法、属性等的可见性、行为和生命周期。以下是对这些核心知识点的详细解析: ### 1. Java...

    深入浅出谈java修饰符共6页.pdf.zip

    让我们详细探讨一下这些修饰符及其在Java编程中的作用。 1. 访问控制修饰符: - `public`: 公共的,可以被任何类访问。如果一个类、接口或方法被声明为`public`,那么它可以在程序的任何地方被访问。 - `...

    iOS 各种修饰符的区别汇总(推荐)

    iOS 中的修饰符是指在声明属性时使用的关键字,以确定属性的特性和行为。在 iOS 开发中,理解这些修饰符的区别非常重要,以便正确地使用它们来确保程序的正确性和安全性。 1. atomic 修饰符 atomic 修饰符是 iOS ...

    JAVA修饰符总结.pdf

    - **修饰符:** 接口中所有的方法默认都是public abstract,所有的变量默认都是public static final。 ### 总结 Java中的修饰符是控制类、变量、方法等元素访问权限和行为的重要工具。正确地使用这些修饰符可以...

    浅析php变量修饰符static的使用

    本篇分析将详细探讨static修饰符的使用方法、特点以及相关的注意事项。 首先,静态变量常用于函数内部,目的是保存函数调用之间的状态信息。普通的局部变量在函数执行完毕后就会被销毁,每次调用函数时,该变量都会...

Global site tag (gtag.js) - Google Analytics