请教 :*(unsigned long*)(addr+4*i)=0xffffffff 是什么意思啊!

luyufan221 2007-04-21 02:39:09
请教 :*(unsigned long*)(addr+4*i)=0xffffffff 是什么意思啊!
...全文
411 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
guanwl 2007-04-22
  • 打赏
  • 举报
回复
从4*i来看. 这个addr应该是一个char*;
我分析这段代码的意思是把addr所辖的内存区域,用0xff填充.

不明白作者为什么不用memset函数.
Cnwanglin 2007-04-22
  • 打赏
  • 举报
回复
结帖了

dsad
我说的多清楚啊
qdhuxp 2007-04-22
  • 打赏
  • 举报
回复
搞嵌入式的!
harbincampus 2007-04-22
  • 打赏
  • 举报
回复
还是用memset()函数吧
Cnwanglin 2007-04-21
  • 打赏
  • 举报
回复
:*(unsigned long*)(addr+4*i)=0xffffffff

多用在寄存器的控制中

addr 可以理解为入口地址

addr + 4*i (i >=0)

这样以 unsigned long 型递增

然后把0xffffffff写到这个连续的地址里


呵呵,有个性


Lynnlichao 2007-04-21
  • 打赏
  • 举报
回复
t79m03y26 2007-04-21
  • 打赏
  • 举报
回复
聚能量 2007-04-21
  • 打赏
  • 举报
回复
把addr+4*i指针转换为unsigned long(无符号长整型)指针,并赋值给指针的内容值为0xffffffff
飞哥 2007-04-21
  • 打赏
  • 举报
回复
我觉得我说明百了,不知道lz听明白了没
飞哥 2007-04-21
  • 打赏
  • 举报
回复
具体情况具体分析

从addr地址开始后移 4*i addr类型的单位长度,并将该地址的内容强制转化成long类型

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧