Linux 程序函数问题。
int func1(int m,in n)
{
......
}
int func2()
{
int func1(int m,in n);
int q,w;
func1(q,w);//这个func1能调用到外面的func1函数吗?不会被里面那个屏蔽掉吗?
//不过程序确实调用到了,运行无错误,只是我不理解啊?
}
------解决方案--------------------
int func2()
{
int func1(int m,in n);
int q,w;
func1(q,w);//这个func1能调用到外面的func1函数吗?不会被里面那个屏蔽掉吗?
//不过程序确实调用到了,运行无错误,只是我不理解啊?
}
func2函数体内出现的 “int func1(int m,in n); ”是一个函数声明而已,其类型与func2之上定义的func1函数相同,所以没有问题。
如果你改成“int func1(int m, int n, int x);" 编译会报错。
------解决方案--------------------函数里面的只是一个声明而已。还有一个有意思的是,C语言的函数里面还可以定义函数,你可以吧func2里面的func1改成定义,他就会覆盖。