自己动手从0到1学写RTOS学习指南

  1. 主页
  2. 自己动手从0到1学写RTOS学习指南
  3. 常见问题FAQ汇总
  4. tNodeParent()是否会写0地址处数据

tNodeParent()是否会写0地址处数据

内容纲要

感谢同学 @PTZ123 的提问

Q:tNodeParent()直接将地址0转换成parent变量,之前地址0处的数据不会丢失么。

{% highlight c%}

define tNodeParent(node, parent, name) (parent )((uint32_t)node – (uint32_t)&((parent )0)->name)

{% endhighlight %}

A:不会的,只是强制类型转换生成定样一个指向特定结构的指针,只不过地址是0而已。parent *)0,只是认为0地址处存放着一个类型为Parent的变量/结构体之类,不存在变量的分配

这篇文章对您有用吗?

我们要如何帮助您?

发表评论

电子邮件地址不会被公开。 必填项已用*标注