关于vc++中 bmp文件的读取

我用vc++2008进行编译:#include<stdlib.h>#include<iostream>#include<fstream>#include<math.h>u... 我用vc++2008进行编译:
#include<stdlib.h>
#include<iostream>
#include<fstream>
#include<math.h>
using namespace std;
typedef struct tagBITMAPFILEHEADER
{
short int bfType; /* 类型标志,总是BM */
unsigned int bfSize; /* 文件大小 */
short int bfReserved1;
short int bfReserved2;
unsigned int bfOffBits; /* 位图点阵偏移量*/
}HEAD;
typedef struct tagBITMAPINFOHEADER
{
unsigned int biSize; // 本结构所占用字节数
unsigned int biWidth; // 位图的宽度,以像素为单位
unsigned int biHeight; // 设备的平面数不清,必须为1
short int biBitCount;// 每个像素所需的位数,必须是1(双色), 4(16色),8(256色)或24(真彩色)之一
unsigned int biCompression; // 位图压缩类型,必须是 0(不压缩),1(BI_RLE8压缩类型)或2(BI_RLE4压缩类型)之一
unsigned int biSizeImage; // 位位图的高度,以像素为单位
short int biPlanes; // 目标图的大小,以字节为单位
unsigned int biXPelsPerMeter; // 位图水平分辨率,每米像素数
unsigned int biYPelsPerMeter; // 位图垂直分辨率,每米像素数
unsigned int biClrUsed;// 位图实际使用的颜色表中的颜色数
unsigned int biClrImportant;// 位图显示过程中重要的颜色数
}INFO;
INFO strInfo;
.................
用:
infile.read((char *)&strInfo,sizeof(strInfo));
读取bmp 文件头中的信息 但读出来诸如尺寸之类的数据是错误的!请教一下大虾们 问题出在哪儿 或可能出在哪儿?
如果win由定义 那该怎么用?若方便 希望 能给个范例 谢谢.
展开
 我来答
beddy1
2008-09-19 · TA获得超过1989个赞
知道大有可为答主
回答量:2271
采纳率:0%
帮助的人:2200万
展开全部
位图的那些信息结构本身Windows定义的有啊,你为什么要重新定义?这样的函数我使用过,没有问题啊,应该是你自己定义的结构体的问题。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式