gpt4 book ai didi

main 中声明的函数可以访问 main 中声明的变量吗?

转载 作者:行者123 更新时间:2023-11-30 18:20:31 28 4
gpt4 key购买 nike

我有一个在 main 中声明并初始化的数组,名为 Edges。

我还在 main 中声明了一些访问名为 Edges 的数组的函数。

代码编译并运行。

为什么它有效?我认为 main 中声明的变量不是全局的。

编辑:请参阅 Sourav 的代码。

最佳答案

实际上,如果您在函数内部声明函数,则内部函数仅对外部函数可见,而不是在 global 范围内。因此,您声明的变量和内部函数[适本地说,代码块]具有相同的作用域。因此,访问变量没有问题。

检查这个

代码

#include <stdio.h>
#include <stdlib.h>

int innerfunc();

int main()
{

int outer = 5;
int innerfunc()
{
printf("outer is %d\n", outer);
}
innerfunc();
return 0;
}

输出

[sourav@infba01383 so_overflow]# ./a.out 
outer is 5
[sourav@infba01383 so_overflow]#

关于main 中声明的函数可以访问 main 中声明的变量吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20761495/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com