zoukankan      html  css  js  c++  java
  • C语言基础:C语言static和extern(1)

    前言

    在前面, 我们讲过局部变量和全局变量, 那么在函数里面, 有没有类似这样子的定义呢? 其实是有的, 函数在这里分为外部函数内部函数, 分别用两个关键字来声明, 下面我们一起来看看吧~~


    开始

    首先我们来看看一个例子:



    我创建了两个文件, 一个用来存放main函数, 一个用来存放其他函数, 关于main函数大家都已经了解了, 这里不做多介绍, 我们主要是来讲Hello.c文件里面的知识.


    有很多人应该看到Hello.c文件里面的关键字extern和static啦, 这两个关键就是我们前言里面所说的内部函数和外部函数, 我们来慢慢了解:

    extern:

    其实我们平常定义的void test(); 这样子的函数, 它就是外部函数, 只是extern可以省略不写, 所以很多人都忽略了extern的存在, 如果在函数的前面加上extern, 那么就是可以完整的定义一个外部的函数啦.


    static:

    这个代表的是内部函数, 所谓的内部函数就是只能在该文件里面调用, 不能在别的文件里面使用, 这次就是所谓的内部函数啦, 如果别的文件想要调用内部函数, 只能像上面的例子那样间接调用, 而不能直接调用.


    下面还有更详细的解释:

    外部函数:定义的函数能被本文件和其他文件访问

     1> 默认情况下所有函数都是外部函数

     2> 不允许有同名的外部函数

     

    内部函数:定义的函数只能被本文件访问,其他文件不能访问

     1> 允许不同文件中有同名的内部函数

     

     static对函数的作用:

     1> 定义一个内部函数

     2> 声明一个内部函数

     

     extern对函数的作用:

     1> 完整地定义一个外部函数

     2> 完整地声明一个外部函数

     (extern可以省略,默认情况下声明和定义的函数都是外部函数)






    好啦, 这次我们就讲到这里, 下次我们继续~~~

  • 相关阅读:
    vue中表格自适应屏幕一屏显示
    css+jq实现星星评分
    CSS中width,min-width和max-width之间的联系
    用jq动态给导航菜单添加active
    解决ios中input兼容性问题
    swiper按钮点击无效及控制器无效问题
    bootstrap 模态框在iphone微信内点击无效
    vue,onerror实现当图片加载失败时使用默认图
    MVC模板页使用
    MVC框架+vue+elementUI
  • 原文地址:https://www.cnblogs.com/iOSCain/p/4282871.html
Copyright © 2011-2022 走看看