gpt4 book ai didi

c - 向 ftw() 发送参数

转载 作者:IT王子 更新时间:2023-10-29 01:23:20 25 4
gpt4 key购买 nike

有没有办法将参数发送到 ftw() 以用于处理路径上的每个文件/目录?由于多线程问题,将参数作为全局变量关注有点困难,即将值设置为全局变量将对所有线程可见,这是错误的。

最佳答案

正确设计的 C 回调接口(interface)有一个 void* 参数,您可以使用它来将周围代码中的任意数据传递到回调中。 [n]ftw 没有这样的论点,所以你有点上当了。

如果您的编译器支持线程局部变量(__thread 存储说明符),您可以使用它们代替全局变量;这将工作但实际上并不比全局更整洁。

如果您的 C 库具有 fts 函数系列,请改用它们。它们在大多数现代 Unix(包括 Linux、OSX 和最近的 *BSD)和 gnulib has a fallback implementation 上可用。 .

关于c - 向 ftw() 发送参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8040584/

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