发新帖我要提问
12
返回列表
打印
[牛人杂谈]

C语言中局部变量和全局变量是否可以重名?

[复制链接]
楼主: 21mengnan
手机看帖
扫描二维码
随时随地手机跟帖
21
mattlincoln| | 2024-9-16 19:30 | 只看该作者 回帖奖励 |倒序浏览
局部变量和全局变量可以重名,但为了避免混淆和潜在的错误,建议采用不同的命名约定。

使用特权

评论回复
22
elsaflower| | 2024-9-16 21:19 | 只看该作者
尽管局部变量和全局变量可以重名,这种做法通常不推荐,因为它可能会导致代码难以理解和维护。

使用特权

评论回复
23
macpherson| | 2024-9-18 10:54 | 只看该作者
局部变量只在定义它们的函数内部可见。如果同一个函数内部定义了两个重名的局部变量,那么它们是不同的变量,可以分别用于不同的用途。

使用特权

评论回复
24
cashrwood| | 2024-9-18 13:42 | 只看该作者
它们的使用范围不同。              

使用特权

评论回复
25
hearstnorman323| | 2024-9-18 15:30 | 只看该作者
当局部变量和全局变量重名时,在局部变量作用域内,局部变量会屏蔽全局变量。这意味着在包含重名局部变量的函数中,对该变量的引用将指向局部变量,而不是全局变量。

使用特权

评论回复
26
janewood| | 2024-9-18 17:17 | 只看该作者
C语言编程中,局部变量和全局变量可以重名,但它们的作用域不同,因此在实际使用中通常不会发生冲突。

使用特权

评论回复
27
uytyu| | 2024-9-18 20:03 | 只看该作者
当在函数内部声明了一个与全局变量同名的局部变量时,该局部变量会屏蔽掉同名的全局变量,也就是说,在该函数内部,对该变量的引用将指向局部变量,而不是全局变量。

使用特权

评论回复
28
belindagraham| | 2024-9-19 09:57 | 只看该作者
局部变量则存储在栈区,其生命周期和作用域密切相关。每次函数调用时,都会为局部变量分配内存,并在函数返回时释放这些内存。

使用特权

评论回复
29
uptown| | 2024-9-19 12:46 | 只看该作者
全局变量:在整个程序运行期间都有效,可以在程序的任何位置访问。
局部变量:仅在定义它的函数或代码块内部有效,超出该范围则无法访问。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则