#define TAILQ_INSERT_AFTER(head,listelm,elm,field) do { \if ((TAILQ_NEXT((elm),field) = TAILQ_NEXT((listelm),field)) = NULL)\TAILQ_NEXT((elm),field)->field.tqe_prev = \&TAILQ_NEXT((elm),field); \else \(head)->tqh_last = &TAILQ_NEXT((elm),field); \TAI
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/20 22:03:32
![#define TAILQ_INSERT_AFTER(head,listelm,elm,field) do { \if ((TAILQ_NEXT((elm),field) = TAILQ_NEXT((listelm),field)) = NULL)\TAILQ_NEXT((elm),field)->field.tqe_prev = \&TAILQ_NEXT((elm),field); \else \(head)->tqh_last = &TAILQ_NEXT((elm),field); \TAI](/uploads/image/z/4674988-28-8.jpg?t=%23define+TAILQ_INSERT_AFTER%28head%2Clistelm%2Celm%2Cfield%29+do+%7B+%5Cif+%28%28TAILQ_NEXT%28%28elm%29%2Cfield%29+%3D+TAILQ_NEXT%28%28listelm%29%2Cfield%29%29+%3D+NULL%29%5CTAILQ_NEXT%28%28elm%29%2Cfield%29-%3Efield.tqe_prev+%3D+%5C%26TAILQ_NEXT%28%28elm%29%2Cfield%29%3B+%5Celse+%5C%28head%29-%3Etqh_last+%3D+%26TAILQ_NEXT%28%28elm%29%2Cfield%29%3B+%5CTAI)
#define TAILQ_INSERT_AFTER(head,listelm,elm,field) do { \if ((TAILQ_NEXT((elm),field) = TAILQ_NEXT((listelm),field)) = NULL)\TAILQ_NEXT((elm),field)->field.tqe_prev = \&TAILQ_NEXT((elm),field); \else \(head)->tqh_last = &TAILQ_NEXT((elm),field); \TAI
#define TAILQ_INSERT_AFTER(head,listelm,elm,field) do { \
if ((TAILQ_NEXT((elm),field) = TAILQ_NEXT((listelm),field)) = NULL)\
TAILQ_NEXT((elm),field)->field.tqe_prev = \
&TAILQ_NEXT((elm),field); \
else \
(head)->tqh_last = &TAILQ_NEXT((elm),field); \
TAILQ_NEXT((listelm),field) = (elm); \
(elm)->field.tqe_prev = &TAILQ_NEXT((listelm),field); \
} while (0)
#define TAILQ_INSERT_AFTER(head,listelm,elm,field) do { \if ((TAILQ_NEXT((elm),field) = TAILQ_NEXT((listelm),field)) = NULL)\TAILQ_NEXT((elm),field)->field.tqe_prev = \&TAILQ_NEXT((elm),field); \else \(head)->tqh_last = &TAILQ_NEXT((elm),field); \TAI
具体是什么地方不清楚,这是一个首尾队列插入元素的宏封装.