小编Vin*_*oth的帖子

这个错误是什么意思?“void”类型的参数与“void (*)(int a)”类型的参数不兼容

我正在尝试使用函数指针来调用另一个函数,但它给了我一个错误。我不明白这个错误。

这是我的代码:

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

void print(void (*ptr)(int));
void printint(int);

int main()
{
    char a;
    int b;
    scanf("%c %d",&a,&b);
    print(printint(b));
    return 0;
} 

void print(void (*ptr)(int a))
{
    ptr(a);
}

void printint(int a)
{
    // printf("executed");
    printf("%d",a);
}
Run Code Online (Sandbox Code Playgroud)

我想我错误地使用了函数指针。有人可以解释如何以正确的方式实施这个程序吗?

c function-pointers function-call function-parameter

2
推荐指数
1
解决办法
96
查看次数