为了账号安全,请及时绑定邮箱和手机立即绑定

指针的问题

指针的问题

慕沐林林 2018-11-07 09:05:22
在处理图片的时候看到代码 BitmapData bmData = b.LockBits(new Rectangle(0, 0, b.Width,            b.Height), ImageLockMode.ReadWrite,            PixelFormat.Format24bppRgb);          System.IntPtr Scan0 = bmData.Scan0;                     unsafe            {                byte* p = (byte*)(void*)Scan0; 这里的(byte*)(void*)是什么意思?
查看完整描述

2 回答

?
湖上湖

TA贡献2003条经验 获得超2个赞

一句话:C++中无类型指针---void *是万能指针。可以转化为其它的类型

注:

所有的指针,在windows系统下都是4个字节       
指针自加是和类型有关系,void不属于任何类型       
任意两个类型的指针之间都可以使用强制类型转换,但是指针指向的数据是否可以兼容两种类型是另外的问题


查看完整回答
反对 回复 2018-11-12
?
料青山看我应如是

TA贡献1772条经验 获得超8个赞

把 IntPtr 类型的 Scan0 强制转换成 byte* 类型,也就是说指向 byte 类型的指针。当这样的类型指来指去的时候,按照1字节的长度前进或后退。

查看完整回答
反对 回复 2018-11-12
  • 2 回答
  • 0 关注
  • 263 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信