求大神 这个写PNG图片数据的一段代码中有几个地方不明白

Going-down-down 2014-04-10 09:59:32
//
// /* top margin */
// memset(row, 0xff, (realwidth + 7) / 8);
// for(y=0; y<margin * size; y++)
// {
// png_write_row(png_ptr, row);
// }
//
// /* data */
// p = qrcode->data;
// for(y=0; y<qrcode->width; y++)
// {
// bit = 7;
// memset(row, 0xff, (realwidth + 7) / 8);
// q = row;
// q += margin * size / 8;
// bit = 7 - (margin * size % 8);
// for(x=0; x<qrcode->width; x++)
// {
// for(xx=0; xx<size; xx++)
// {
// *q ^= (*p & 1) << bit;
// bit--;
// if(bit < 0)
// {
// q++;
// bit = 7;
// }
// }
// p++;
// }
// for(yy=0; yy<size; yy++)
// {
// png_write_row(png_ptr, row);
// }
// }
// /* bottom margin */
// memset(row, 0xff, (realwidth + 7) / 8);
// for(y=0; y<margin * size; y++)
// {
// png_write_row(png_ptr, row);
// }



以上是代码
具体就是

// for(xx=0; xx<size; xx++)
// {
// *q ^= (*p & 1) << bit;
// bit--;
// if(bit < 0)
// {
// q++;
// bit = 7;
// }
// }

这段循环的内容看不大懂 求大神帮忙
...全文
90 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2014-04-10
  • 打赏
  • 举报
回复
代码功能归根结底不是别人帮自己看或讲解或注释出来的;而是被自己静下心来花足够长的时间和精力亲自动手单步或设断点或对执行到某步获得的中间结果显示或写到日志文件中一步一步分析出来的。 提醒:再牛×的老师也无法代替学生自己领悟和上厕所! 单步调试和设断点调试是程序员必须掌握的技能之一。
Going-down-down 2014-04-10
  • 打赏
  • 举报
回复
引用 1 楼 flyrack 的回复:
先在硬盘这么大 直接用RGB模式不行么
现在我只是看这段代码 目的也只是看明白那段循环啊 求解啊
flyrack 2014-04-10
  • 打赏
  • 举报
回复
先在硬盘这么大 直接用RGB模式不行么

65,208

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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