当前位置:回答三>百科知识>A THIRD DIMENSION 这个有人做过合集的吗

A THIRD DIMENSION 这个有人做过合集的吗

2024-09-22 09:08:15 编辑:join 浏览量:579

A THIRD DIMENSION 这个有人做过合集的吗

这个A THIRD DIMENSION的合集资源很多,你可以选择百度STEVE福利游戏动漫,进行下载。内容很多,自己选择。

TAILQ_FOREACH和TAILQ_FIRST的实现代码略。详细的看下面的附录中的代码,比较简单

TAILQ_LAST的作用是计算出队列最后一个元素的地址,它的实现就有点难懂了,用到了TAILQ_ENTRY和TAILQ_HEAD内存布局一样的知识点:

#define TAILQ_LAST(head,headname) \

(*(((struct headname *)((head)->tqh_last))->tqh_last))

队列中的tqh_last字段的值是队列最后一个元素的tqe_next的地址,不是最后一个元素的地址。怎么计算出最后一个元素的地址呢? (structheadname *)(head)->tqh_last获得最后一个元素的tqe_next的地址,并强制转换成队列指针类型,再对其用->tqh_last 就相当于获得了最后一个元素的tqe_prev地址(因为TAILQ_ENTRY和TAILQ_HEAD内存布局一样),然后解引用就得到了最后一个元素 的地址。很巧妙!

其它接口的实现请看queue.h文件,略。有了上面的知识,就很简单了。

标签:THIRD,DIMENSION,合集

版权声明:文章由 回答三 整理收集,来源于互联网或者用户投稿,如有侵权,请联系我们,我们会立即处理。如转载请保留本文链接:https://www.huidasan.com/article/268572.html
热门文章