gpt4 book ai didi

c++ - 传递一个函数和一个整数的函数。警告 : passing argument of "" from incompatible pointer type

转载 作者:行者123 更新时间:2023-11-30 20:50:36 26 4
gpt4 key购买 nike

所以,这是代码:

void pass(void(), int);
void hello(int);

int main(void)
{
pass(hello,0);

return 0;
}

void pass(void rfunc(),int a)
{
rfunc(a);
}

void hello(int a)
{
printf("%d",a);
}

“0”的输出按预期打印。但是,我收到了这些警告,我正在尝试修复这些警告。错误提示:

in function 'main':
warning: passing argument 1 of 'pass' from incompatible pointer type

如何修复此警告?

最佳答案

pass 的第一个参数需要一个 void (*)() 类型的函数指针,但您传入的是 void 类型的函数指针(*)(int)。这是不兼容的类型。

更改 pass 的参数以接受正确的类型:

void pass(void(int), int);
...
void pass(void rfunc(int),int a)
{
...

关于c++ - 传递一个函数和一个整数的函数。警告 : passing argument of "" from incompatible pointer type,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42865164/

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