当前位置: 首页> 房产> 家装 > 网络营销百科_2021百度模拟点击工具_类似火脉的推广平台_如何制作自己的链接

网络营销百科_2021百度模拟点击工具_类似火脉的推广平台_如何制作自己的链接

时间:2025/7/10 3:49:41来源:https://blog.csdn.net/qincjun/article/details/139904775 浏览次数:0次
网络营销百科_2021百度模拟点击工具_类似火脉的推广平台_如何制作自己的链接

1.铺垫

1.1全局变量可以跨文件访问吗?答:可以;

1.2函数可以跨文件访问吗?答:可以

1.3在具体的应用场景中,程序员不想让全局变量或者函数跨文件访问,只在本文件内部被访问?答:可以——引出static关键字

2.static

2.1static修饰全局变量,该变量只能在本文件内被访问,不能被外部其他文件直接访问;但是可以被间接访问——通过访问非static修饰的函数,访问static修饰的全局变量

2.2static修饰函数,该函数只能在本文件内被访问,不能被外部其他文件直接访问;但是可以被间接访问——通过访问非static修饰的函数,访问static修饰的函数

解释:static修饰全局变量或函数,限制了作用域,本来是个文件都可以访问,修饰之后,只能在本文件中被访问

2.3static修饰局部变量,更改局部变量的生命周期,作用域不变,临时变量->全局生命周期

但是可以通过全局变量指针,来获取局部变量的地址,从而访问变量

扩展:进程地址空间的知识

static修饰局部变量,将局部变量从栈区定义,变成了已初始化全局数据区定义,延长了生命周期;

举例:

#include<stdio.h>
void fun() {
    static int a = 0;
}
int main(){

    func();
    printf("a=%d\n", a);
    return 0;
}

//此程序会报错:未定义标识符a;a的作用域依旧是func()代码块;但生命周期为全局生命周期

//func()函数跑完之后,空间会被回收,可是a依旧被保存在内存中;

int *p=NULL;

void fun() {
    static int a = 0;

    p=&a;
}
int main(){

    printf("a=%d\n", *p);        //可以如此将a拿出来
    return 0;
}

关键字:网络营销百科_2021百度模拟点击工具_类似火脉的推广平台_如何制作自己的链接

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: