社区
C语言
帖子详情
全局变量 定义在 main函数 内和外 有什莫区别
seaandsunandsky
2007-08-16 10:10:34
如题
...全文
3097
17
打赏
收藏
全局变量 定义在 main函数 内和外 有什莫区别
如题
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
17 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
scream7
2012-04-28
打赏
举报
回复
1
main也只是一个普通函数,只是是有系统来调用它,所以在main里的也是局部变量.
wszzfzsc
2012-04-27
打赏
举报
回复
你去看看书,就知道啦
datamining2005
2012-04-27
打赏
举报
回复
楼主应该说的是 main外面定义 ,main里面使用吧
Ever_lover
2012-04-26
打赏
举报
回复
不要把main函数想的那么神器。。。他和其他的函数一样,只不过他是系统的一个接口。。。和其他函数是main函数的接口一样。。。在main函数定义和在fun()中定义一样都只能在这个函数体中使用
sky198306
2012-04-26
打赏
举报
回复
路过学习一下呵呵~
二进制浮游
2012-04-26
打赏
举报
回复
受教育!!
linuxyuking
2007-08-17
打赏
举报
回复
在任何函数之外 包括main
littlexidong
2007-08-17
打赏
举报
回复
楼主多看看C语言的书吧~~~~
luojinzhong2002
2007-08-16
打赏
举报
回复
在main()汉书外定义的全局变量,可以在子函数和main()函数中都可以应用;main()函数种定义的全局变量,只在main()函数内有效!
儿大不由爷
2007-08-16
打赏
举报
回复
這個問題真強!
johnsonwuy
2007-08-16
打赏
举报
回复
main函数里定义的并非全局变量,只是在main函数里有效.如果程序里有多个函数,定义的全局变量在这些函数里都可以使用,而在main中定义的只能在main中使用,其他函数不可以直接调用比如:
int n=0;
void f()
{
n++;
}
int main()
{
n++;
f();
return 0;
}
如果int n定义在main中
void f();
int main()
{
int n=0;
n++;
return 0;
}
void f()
{
n++;//error ,此处编译都不会通过.
}
要搞清全局变量和局部变量的区别,全局变量是程序的各个函数都可以调用的,而局部变量只在函数内部有效.
qld001
2007-08-16
打赏
举报
回复
就是,main里面定义的那就不是全局变量了阿,神阿~~
chai21cn
2007-08-16
打赏
举报
回复
定义在main里面的变量 怎么变成了 全局变量
我啃
2007-08-16
打赏
举报
回复
谁说定义在main里面的是全局变量?
nihaoweihua
2007-08-16
打赏
举报
回复
用于存储程序数据的内存可以用存储时期、作用域和链接来表征。
存储时期可以是静态的、动态的或分配的。如果是静态的,内存在程序开始执行时被分配,并在程序运行时一直存在。如是动态的,变量所用的内存在程序执行到带变量定义所在代码块时开始分配,在退出代码块时释放,如果是分配的内存,内存在调用malloc()等函数时分配,在调用free()时释放。
作用域决定了哪部分程序可以访问某个数据。在所有函数之外定义的变量具有文件作用域,并对该变量声明之后定义的所有函数可见。在代码块内定义或者作为函数参数定义的变量具有代码块作用域,只在该代码块及其子代码块中可见。
连接描述了程序的某个单元定义的变量可被连接到其他那些地方。具有代码块作用域的变量作为局部变量,具有空连接。具有文件作用域的变量可以有内部连接或外部连接。内部连接意味只可以在包含变量定义的文件内部使用,外部连接意味变量可以在其他文件中使用。
变量的存储类决定了他的存储时期、作用域和链接。存储类由声明变量的位置和与之相关的关键字来决定。
在所有的函数之外定义的变量是外部变量,作用域为整个文件,具有外部连接,静态存储时间。除非使用了其他关键字,在函数中声明的变量是自动变量,具有代码块作用域,空连接、自动存储时间。在函数中使用关键字static定义的变量具有代码块作用域,空连接,静态存储时间。在函数外使用关键字static定义的变量具有文件作用域,内部连接,静态存储时间
除了存储类,C还提供了可分配内存(allocated memory),这种内存通过调用malloc等函数来分配,它返回一个指向该内存的指针,在调用free或程序终止之前该内存保持已分配状态。任何可以访问该指针的函数都可以访问这块内存。
cceczjxy
2007-08-16
打赏
举报
回复
谁说的定义在main()内的变量叫全局变量?
jixshabby
2007-08-16
打赏
举报
回复
.....大哥 在main()函数内定义的变量 还能叫全局变量吗
《C语言基础》 之 第6章
函数
课程内容:
main
函数
、自
定义
函数
之
函数
定义
、自
定义
函数
之
函数
调用、自
定义
函数
之 传参和返回值、使用codeblocks IDE进行多文件编程、多文件编程/警告/
函数
声明、使用头文件进行
函数
声明 、为何防止头文件重复包含、头文件中到底放了些什么东西、什么时库
函数
标准io库、数学库、标准库、
全局变量
和局部变量
main
函数
全局变量
变量是程序的基本组成单位,三要素:(类型,名称,值)。并不是一个项目中所有的源文件都必须包含一个
main
()
函数
,而是一个项目的所有源文件中包含一个
main
()
函数
就够。
全局变量
:
定义
在所有
函数
之外的变量,
定义
之后都可以访问,数据共享,在
函数
中变量被改变,在其他
函数
中该变量也被改变。不是每一个源文件都要有一个
main
函数
,而是每个C语言项目中的所有源文件中必须有且只能有一个
main
函数
。局部变量:在
函数
或者代码块里面
定义
的变量,从
定义
开始到
函数
或者代码块结束。作用域:变量的作用范围。1.
main
()
函数
。
main
c语言中变量的
定义
,C语言中在
main
函数
中
定义
的变量是
全局变量
么_后端开发...
PHP 和 JavaSript
区别
_后端开发PHP是一种创建动态交互性站点的强有力的服务器端脚本语言,主要用于Web开发领域,而JavaSript是一种具有
函数
优先的轻量级,解释型或即时编译型的高级编程语言,主要用于开发前端应用。C语言中在
main
函数
中
定义
的变量不是
全局变量
,而是局部变量。
main
函数
中
定义
的变量与
全局变量
的生命周期一样长。(推荐教程:C语言教程)注意:
全局变量
一定是
定义
在
函数
...
main
函数
内的变量是
全局变量
,还是局部变量?
main
函数
内的变量是
全局变量
,还是局部变量?
main
函数
中的变量是
全局变量
还是局部变量?
main
函数
内的变量不是
全局变量
,而是局部变量,只不过它的生命周期和
全局变量
一样长
全局变量
一定是
定义
在
函数
外部的
C语言
69,369
社区成员
243,082
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章