您的位置:首页 > 其它

为什么全局变量没有发生变化?

2017-02-16 17:03 323 查看
今天在nyoj上做一道关于最大岛屿时,我遇到了一个问题,就是在dfs后我的一个全局变量没有发生变化,结果让我调了半天,最后才发现问题。

希望你能从我的错误中找到你想要的答案。

如下代码

#include<stdio.h>
int num;
void dfs(int cur,int num)//注意虽然这里变量也是num但它却是这个函数的局部变量
{
if(cur)
num++;
return;
}
int main(void)
{
int n,i;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
num = 0;
dfs(i,num);
printf("%d ",num);//s输出的结果就是num没有变化
}
}


上面就是我错误的方式,之所以num没变化是因为全局变量和dfs中的局部变量是两个变量,只不过二者的名字定义为一样了,这里我犯了这个白痴的错误。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐