增加queue遍历功能函数
This commit is contained in:
@@ -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个数据
|
||||
*
|
||||
|
Reference in New Issue
Block a user