如何传递具有参数作为另一个函数的参数的函数指针?

PMH

如您所见,我想将函数传递send_messagepthread_create,但是我不知道如何传递其参数。怎么做?

pthread_create(&t_write, NULL, send_message, NULL); // how to specify argument of the send_message?

void *send_message(void *sockfd){

    char buf[MAXLEN];
    int *fd = (int *)sockfd;
    fgets(buf, sizeof buf, stdin);

    if(send(*fd, buf, sizeof buf, 0) == -1){
        printf("cannot send message to socket %i\n", *fd);
        return (void *)1;
    }

    return NULL;
}
bl

简短的答案:只需将参数作为第四个参数传递给pthread_create

更长的答案:(pthread_create按手册页)定义如下:

int pthread_create(pthread_t *thread, const pthread_attr_t *attr,
                      void *(*start_routine) (void *), void *arg);

第三个参数的含义可以通过以下方式解码cdecl

cdecl> explain void *(*start_routine) (void *)
declare start_routine as pointer to function (pointer to void) returning pointer to void

如您所见,它需要一个指向avoid *并返回a的函数的指针void *幸运的是,这正是您所拥有的。并根据手册页pthread_create

新线程通过调用开始执行start_routine()arg作为的唯一参数传递start_routine()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

修改函数内的指针(将另一个指针作为参数传递)

来自分类Dev

如何将可变函数参数作为参数传递给另一个函数?

来自分类Dev

如何将参数传递给作为另一个函数参数的函数

来自分类Dev

如何将带有参数作为参数的函数传递给Python中的另一个函数?

来自分类Dev

如何在打字稿中将参数从一个具有可变参数的函数传递到另一个具有可变参数的函数?

来自分类Dev

将指向一个C函数的指针作为另一个函数的参数传递

来自分类Dev

将指向一个C函数的指针作为另一个函数的参数传递

来自分类Dev

如何从具有参数的另一个函数中调用带有参数的函数?

来自分类Dev

如何将指针传递给在另一个结构内部声明的结构作为函数参数?

来自分类Dev

如何传递一个函数(具有自己的参数)作为函数中的参数?

来自分类Dev

如何将tanh函数作为参数传递给另一个函数?

来自分类Dev

如何执行将细节作为参数传递给另一个函数的函数

来自分类Dev

如何将函数作为参数传递给另一个函数?

来自分类Dev

如何调用在另一个函数中作为参数传递的函数

来自分类Dev

如何将泛型函数作为参数传递给另一个函数?

来自分类Dev

使用具有另一个函数作为参数的函数:

来自分类Dev

将具有不同数量参数的函数传递给另一个函数C ++

来自分类Dev

将具有任意数量参数的任何函数传递给另一个函数

来自分类Dev

如何从C ++中的静态函数内部将指向静态函数的指针作为另一个静态函数的参数传递

来自分类Dev

将函数参数作为参数传递给python中的另一个函数

来自分类Dev

如何将一个函数作为参数传递给另一个函数

来自分类Dev

R-如何将一个函数作为参数传递给另一个函数?

来自分类Dev

具有可变数量和参数类型的C ++函数作为另一个函数的参数

来自分类Dev

如何将另一个类的函数作为参数传递?

来自分类Dev

如何将参数传递给另一个具有相同名称的内部函数?

来自分类Dev

是否可以将两个具有不同签名的函数作为参数传递给另一个函数?

来自分类Dev

如何将一个类的函数作为另一个类的另一个函数的参数传递

来自分类Dev

将匿名函数作为唯一参数传递给另一个函数(C ++)

来自分类Dev

PHP函数作为另一个函数的参数

Related 相关文章

  1. 1

    修改函数内的指针(将另一个指针作为参数传递)

  2. 2

    如何将可变函数参数作为参数传递给另一个函数?

  3. 3

    如何将参数传递给作为另一个函数参数的函数

  4. 4

    如何将带有参数作为参数的函数传递给Python中的另一个函数?

  5. 5

    如何在打字稿中将参数从一个具有可变参数的函数传递到另一个具有可变参数的函数?

  6. 6

    将指向一个C函数的指针作为另一个函数的参数传递

  7. 7

    将指向一个C函数的指针作为另一个函数的参数传递

  8. 8

    如何从具有参数的另一个函数中调用带有参数的函数?

  9. 9

    如何将指针传递给在另一个结构内部声明的结构作为函数参数?

  10. 10

    如何传递一个函数(具有自己的参数)作为函数中的参数?

  11. 11

    如何将tanh函数作为参数传递给另一个函数?

  12. 12

    如何执行将细节作为参数传递给另一个函数的函数

  13. 13

    如何将函数作为参数传递给另一个函数?

  14. 14

    如何调用在另一个函数中作为参数传递的函数

  15. 15

    如何将泛型函数作为参数传递给另一个函数?

  16. 16

    使用具有另一个函数作为参数的函数:

  17. 17

    将具有不同数量参数的函数传递给另一个函数C ++

  18. 18

    将具有任意数量参数的任何函数传递给另一个函数

  19. 19

    如何从C ++中的静态函数内部将指向静态函数的指针作为另一个静态函数的参数传递

  20. 20

    将函数参数作为参数传递给python中的另一个函数

  21. 21

    如何将一个函数作为参数传递给另一个函数

  22. 22

    R-如何将一个函数作为参数传递给另一个函数?

  23. 23

    具有可变数量和参数类型的C ++函数作为另一个函数的参数

  24. 24

    如何将另一个类的函数作为参数传递?

  25. 25

    如何将参数传递给另一个具有相同名称的内部函数?

  26. 26

    是否可以将两个具有不同签名的函数作为参数传递给另一个函数?

  27. 27

    如何将一个类的函数作为另一个类的另一个函数的参数传递

  28. 28

    将匿名函数作为唯一参数传递给另一个函数(C ++)

  29. 29

    PHP函数作为另一个函数的参数

热门标签

归档