我已经完成this quiz,但不理解输出结果
#include <stdio.h>
int main()
{
void demo();
void (*fun)();
fun = demo;
(*fun)();
fun();
return 0;
}
void demo()
{
printf("GeeksQuiz ");
}
预期:编译器错误,因为我认为通常需要在demo()
中调用之前初始化main()
?
实际结果:GeeksQuiz GeeksQuiz
我的假设是否错误,即通常需要先定义函数才能调用它们?
答案 0 :(得分:6)
函数通常需要先定义才能被调用
嗯,实际上不是,编译器只需要在调用(使用)之前查看原型。 a bit special就足够了。
在您的情况下,在 <WebView
other
stuff
onShouldStartLoadWithRequest={this.openExternalLink}
/>
内,
openExternalLink= (req) => {
const isHTTPS = req.url.search('https://') !== -1;
if (isHTTPS) {
return true;
} else {
if (req.url.startsWith("test://")) {
this.props.navigation.navigate('Home');
}
return false;
}
}
正用于此目的。请注意,这不是函数调用。