C++语言编程读取24位*.bmp格式位图图像,并显示对应图像的ASCII字符图。
#include <stdio.h>
#include <stdlib.h>
#pragma pack(2)
typedef unsigned short WORD;/*定义WORD为两个字节的类型*/
typedef unsigned long DWORD;/*定义DWORD为e四个字节的类型*/
/*位图文件头*/
typedef struct BMP_FILE_HEADER
{
WORD bType; /* 文件标识符*/
DWORD bSize; /* 文件的大小*/
WORD bReserved1; /* 保留值,必须设置为*/
WORD bReserved2; /* 保留值,必须设置为*/
DWORD bOffset; /* 文件头的最后到图像数据位开始的偏移量*/
} BMPFILEHEADER;
/*位图信息头*/
typedef struct BMP_INFO
{
DWORD bInfoSize; /* 信息头的大小*/
DWORD bWidth; /* 图像的宽度*/
DWORD bHeight; /* 图像的高度*/
WORD bPlanes; /