社区
C语言
帖子详情
请问下面代码这样做的目的是什么?
MorningTea
2006-07-13 02:11:55
DestXE是图象的宽度
SrcBpp即为系统内置的颜色位数
nDstLineBytes = (int) ((( (DWORD) DestXE * SrcBpp + 7L) / 8L + 3L) & 0xFFFCL);
请教大家,我看不懂,这个是在计算存放图片的内存大小时候用到,别人的代码
...全文
312
8
打赏
收藏
请问下面代码这样做的目的是什么?
DestXE是图象的宽度 SrcBpp即为系统内置的颜色位数 nDstLineBytes = (int) ((( (DWORD) DestXE * SrcBpp + 7L) / 8L + 3L) & 0xFFFCL); 请教大家,我看不懂,这个是在计算存放图片的内存大小时候用到,别人的代码
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
MorningTea
2006-07-14
打赏
举报
回复
谢谢,明天加班我就认真看看:-)
ckp
2006-07-13
打赏
举报
回复
nDstLineBytes = (int) ((( (DWORD) DestXE * SrcBpp + 7L) / 8L + 3L) & 0xFFFCL);
+7再/8,相当于是将数据作8字节的对齐。
例如:
1,2,3,4,5,6,7,8,9,10
10个数,(10+7)/8以后,结果2。也就是说,10个数,正好可以填入2组8字节的内存单元。
+ 3L) & 0xFFFCL);
FFFC的二进制的最低4位为1100。
也就是说与FFFC按位进行与运算后,结果正好是4的整数倍。
MorningTea
2006-07-13
打赏
举报
回复
55,我还是不懂
我不明白要这样做?
就是为什么要+7 然后/8,为什么不其他呢?,还有后面为什么要如此计算呢?
ddstudent
2006-07-13
打赏
举报
回复
比如说 1 - 8 bit, 如 +7/8 全部 = 1 byte
比如说最后的 1-4 bytes, +3 再 &0xfffc 会从下一个 4bytes 的啟始点开始
jixingzhong
2006-07-13
打赏
举报
回复
+7 +3是对齐操作
=========
可能这么说会容易误解,
看这句话下面的解释吧, 呵呵
jixingzhong
2006-07-13
打赏
举报
回复
SrcBpp 是位数, 不是字节数,所以有一个 /8L (长整数)
+7 +3是对齐操作,
/8L 前+7 是防止非整字节位丢失,比如DestXE * SrcBpp 出来的位数不能被 8 整除,后面存在一些非整字节位,那么直接 /8L 会丢失这个部分, +7后 /8L 可以保留;
+3 在 & 0xFFFCL 之前是类似的效果 ...
MorningTea
2006-07-13
打赏
举报
回复
楼上说的我不懂,55
有没有简单例子解释给我看看,谢谢
ddstudent
2006-07-13
打赏
举报
回复
看起來看是做一些位置的排正 +7/8 , +3, 最后再 &0xfffc 就是边界为 4 的倍数
优化java
代码
的一些小技巧(一)————只
做
有
目的
性的优化
本文探讨了Java编程中提升
代码
效率的策略,强调了有
目的
性优化的重要性,避免盲目优化导致系统复杂度增加。同时,文章预告了后续将讨论枚举、equals()方法重写及多态性等主题。
企业
做
数字化转型的
目的
是什么?
本文围绕企业数字化转型展开,阐述转型
目的
、原因,介绍转型的五个方面及成功转型要点。还列举中国移动、阿斯利康等企业转型案例,最后介绍织信Informat低
代码
平台,其功能丰富,能提升研发协同、加速数字化进程、保障数据安全等。
做
SEO优化的
目的
到底是什么
SEO优化是网络营销的关键,它不仅提升网站排名,也为网站奠定坚实基础。创新是SEO发展的核心,需要在内容和用户体验上寻求突破。同时,优化的尺度至关重要,过度使用某些优化手段可能导致反效果。SEO的
目的
是为了有效的营销,关键词选择准确能带来实际利润。学习和实践SEO是实现优化目标的关键。
篡改页面的Js
代码
,从而达到为所欲为的
目的
不少网站用JavaScript判断用户输入数据,通常构造Http请求跳过验证较繁琐。本文介绍不模拟Http请求跳过验证的方法,即使用浏览器开发者工具修改页面JavaScript
代码
,还给出两种调试方法,如监听事件、通过输入框id搜索定位
代码
等,最后声明仅用于技术交流学习。
下面
的
代码
有什么不妥之处
本文针对两道Java面试题进行解析,第一题涉及字符串比较时null安全的问题,第二题则讨论了三元运算符的使用及
代码
冗余问题。
C语言
70,038
社区成员
243,247
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章