摘要:看到网上不少帖子介绍BMP图像行像素数需要是4的倍数,毫无疑问对于任何颜色数BMP位图,这个条件都是成立的,但是在黑白位图中,行像素数仅仅以4的倍数来补位,生成或读取的BMP图像却不一定正确。因为单色BMP图像一个二进制位表示一个像素,因此行像素数不足8的时候会被自动补充成为一个完整的字节,因此在读取单色的BMP图像时需要注意对补位部分的程序进行特殊处理。各颜色位数的BMP图像文件容量的计算公式总结如下: 黑白:文件头(14字节)+信息头(40字节)+2个调色板(共8字节)+Height(图像高度)*(Width+8-Width%8)/8 16色:文件头(14字节)+信息头(40字节)+16
阅读全文
07 2007 档案
摘要:FILE *fp=fopen(xxx)long nSize=0; //文件长度if (fp==NULL){ 错误处理}fseek(fp,0,SEEK_END);nSize=ftell(fp); //ftell()获取当前文件游标位置,nSize中为文件大小
阅读全文
摘要:在写MDI程序的时候,总是按照建议把菜单消息映射函数放在CxxxView类中,实际CxxDoc,CxxApp,CMainFrame,CChildFrame这五个类中都可以放置该函数,如果有两个类以上对同一个消息编写了映射函数,那么触发顺序如下:CxxxView——〉CxxxDoc——〉CChildFrame——〉CxxxApp——〉CMainFrame之所以所有类都可以得到该消息,是因为mfc采用了一种被称为消息链的松耦合方式进行消息传递。消息首先发送到窗口处理过程,窗口处理过程里有如下的伪码 if( !view -DealMessage(...) ) { if( !doc-DealMes
阅读全文
摘要:内存分配与回收,一直都是令C/C++程序员们头痛的事情,不使用指针会降低程序的灵活性,同时也等于放弃了C/C++语言最大的优势,而使用指针就必须保证在任何情况下都不能出错,否则后果的严重性相信每个程序员都深有体会无需多讲。因此,在指针的使用上面,所有的程序员都战战兢兢,如履薄冰,同时相信每个人也都在不停的思考,并且总结出一套适合自己的方法去解决这个问题。本文使用模版类建立了一个对所有类型指针都通用的内存管理模版,目的是实现如下最基本的功能: 1. 对任何指针变量均通用 2. 可以安全的分配所需的内存 3. 无需程序员操作,实现资源的自动释放类声明如下:templatetypename Tc
阅读全文

浙公网安备 33010602011771号