为了账号安全,请及时绑定邮箱和手机立即绑定

它们之间的区别在哪里?如何区分

它们之间的区别在哪里?如何区分

C
撒科打诨 2023-03-16 12:13:01
如;include <stdio.h>int a=1,s=0void mian(){}和#include <stdio.h>void main(){inta=1,s=0;}
查看完整描述

2 回答

?
喵喔喔

TA贡献1735条经验 获得超5个赞

对于局部变量用static声明,则是为该变量分配的空间在整个程序的执行期内都始终存在,外部变量用static来声明,则该变量的作用只限于本文件模块。解决方法如下:

1、首先定义指针的方式void (*p2)();//表示指针,p2 = printfwelcome;//函数就是地址。

2、还可以定义指针的方式,p2();//1.直接通过指针名字调用,(*p2)();//2.取内容(*指针名字)。

3、接着输入int (*padd)(int a,int b);padd = add;int ret = (*padd)(1,2);printf("ret=%d\n",ret)。

4、然后写出printfwelcome函数。

5、最后写出add函数,运行程序就完成了。


查看完整回答
反对 回复 2023-03-18
?
海绵宝宝撒

TA贡献1809条经验 获得超8个赞

定义在主函数外面是全局变量,分配的内存在静态内存,整个工程内都可以访问到他的值,但是优先级低。只有程序退出后才会释放他的内存。冲突的时候优先使用局部变量。
定义在函数内的变量时局部变量,分配的是内存堆栈,只有特定的函数内可以访问到,退出函数后自动释放内存堆栈。优先级高

查看完整回答
反对 回复 2023-03-18
  • 2 回答
  • 0 关注
  • 96 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信