野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2864|回复: 2

[freertos] 野火内核实现的几个问题

[复制链接]
发表于 2022-10-30 23:22:02 | 显示全部楼层 |阅读模式
本帖最后由 toriyung 于 2022-10-30 23:26 编辑

第一个问题:

    图1中宏定义后为什么还要重定义,不能“ typedef portSTACK_TYPE    uint32_t  ”吗

第二个问题:
    如图2,火哥的书里说闭环链表的第一个节点和最后一个节点是同一个即链表下的精简节点,为什么节点计数器要用到最后一个节点的下一个节点的辅助值?这样不就等于是第一个节点的下一个节点即第二个节点的辅助值了吗
    还有入口节点又是什么意思,看图2同样是最后一个节点的下一个节点了

第三个问题:
   如图3,为什么强制转换数据类型要转换成两种数据类型,虽然只是有无符号型的区别但是转成同一种不是更好吗

图2

图2

图1

图1

图3

图3
回复

使用道具 举报

发表于 2022-11-2 09:58:41 | 显示全部楼层
1 代码风格之类 多套一层 如果只是一层用 typedef 是  typedef  uint32_t portSTACK_TYPE   
2  没有明白什么困惑 在章节里面也有画的图 list实例对象的xListEnd成员是mini节点,它的下一个就是头一个节点
3 暂也不知道意图
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-11-5 18:51:38 | 显示全部楼层
WishWish 发表于 2022-11-2 09:58
1 代码风格之类 多套一层 如果只是一层用 typedef 是  typedef  uint32_t portSTACK_TYPE   
2  没有明白 ...

感谢管理员大大回复
关于第二个问题我看了下宏定义本身的直译:入口函数的辅助值,所以简单地说就是我想知道入口节点指的是什么
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-4-20 14:52 , Processed in 0.046152 second(s), 32 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表