增加queue遍历功能函数

This commit is contained in:
2025-08-15 14:16:46 +08:00
parent 10109e989a
commit ea8683c040
3 changed files with 25 additions and 14 deletions

View File

@@ -156,6 +156,22 @@ bool queue_peek_at(const queue_t *queue, size_t index, void *value) {
return true;
}
/**
* @brief 遍历队列
*
* @param queue
* @param func 回调函数 指定了数据(未指定数据类型)和索引
*/
void queue_foreach(const queue_t *queue, void (*func)(void *data, size_t index)) {
queue_node_t *node = queue->head;
size_t idx = 0;
while (node) {
func(node->data, idx);
node = node->next;
idx++;
}
}
/**
* @brief 抛弃队列前n个数据
*