c-读取文件和线程的函数中的分段错误



我在编写将传递给pthread_create的函数时遇到问题。该函数接受两个参数。我在调用它时遇到分段错误。

和pthread_create:

pthread_create(&tid_array[i], NULL, searchForWord(argv[i + 2], word), &wData[i]);

传递给pthread_create的函数是否可以接受void*以外的其他参数?

pthread_create采用函数指针形式的启动例程。

表达式searchForWord(argv[i + 2], word)不是函数指针;它在当前线程中调用searchForWord,它总是返回NULL,然后将NULL传递给pthread_create。

线程启动函数必须有一个指向void参数的指针,但您可以自由创建一个结构,将指向该结构的指针传递到函数中。您将获得一个指向void的指针,可以将其强制转换为指向结构的指针。

相关内容

  • 没有找到相关文章

最新更新