gpt4 book ai didi

C 关于声明的问题

转载 作者:太空宇宙 更新时间:2023-11-04 03:51:52 24 4
gpt4 key购买 nike

我发现了以下 C 程序这些行,但不知道它们的含义和作用:

    int (*less)(void *m, size_t a, size_t b);
int (*less)(void *m, size_t a, size_t b);
void (*swap)(void *m, size_t a, size_t b);

它们相当于什么?

最佳答案

声明用于函数指针,旨在指向具有不同签名的函数。

int (*less)(void *m, size_t a, size_t b);

这是一个名为“less”的函数指针,它与接受参数列表 (void *m, size_t a, size_t b) 并返回 int 的函数一起使用。您可以将此函数指针指向这样的函数:

int foo(void *m, size_t a, size_t b)
{
return 0;
}

第二个也是一样。第三个是这样的:

void (*swap)(void *m, size_t a, size_t b);

这是一个名为“swap”的函数指针,它与接受参数列表 (void *m, size_t a, size_t b) 并返回 void 的函数一起使用。您可以将此函数指针指向这样的函数:

void foo(void *m, size_t a, size_t b)
{
return;
}

website对于解码这些类型的声明很方便。

关于C 关于声明的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20065293/

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