資源簡介
純c函數寫的旋轉位圖90度程序, 提供了編程接口方便調用。 不涉及任何平臺相關代碼,可以在windows和linux中運行。 其中變量定義用到了c++的規則(GNU c) 所以有些編譯器可能報錯, 請使用c++ 源代碼格式cpp,再編譯即可。
代碼片段和文件信息
#include?
#include?
//因為在?BITMAPFILEHEADER?結構體中?bfType?為2字節,?為防止字節對齊為4字節,故強制使用2字節對齊。
//詳情請搜索?內存對齊
#pragma?pack?(2)
typedef?unsigned?long???????DWORD;
typedef?unsigned?char???????BYTE;
typedef?unsigned?short??????WORD;
typedef?long?LONG;
typedef?struct?tagBITMAPFILEHEADER?{?
WORD?bfType;?//必須為‘BM‘
DWORD?bfSize;?//文件大小
WORD?bfReserved1;?//必須為0
WORD?bfReserved2;?//必須為0
DWORD?bfOffBits;//從ITMAPFILEHEADER到存放bmp數據的偏移量
}BITMAPFILEHEADER?*PBITMAPFILEHEADER;
typedef?struct?tagBITMAPINFOHEADER{
DWORD?biSize;?//此結構的大小可用sizeof(BITMAPINFOHEAER)得到
LONG??biWidth;?//位圖寬度以象素為單位
LONG??biHeight;?//位圖高度以象素為單位
WORD??biPlanes;?//必須為1
WORD??biBitCount;//位圖象素位數可為01482432?
DWORD?biCompression;?
DWORD?biSizeImage;?//(僅用于壓縮)
LONG??biXPelsP
- 上一篇:基于蟻群算法的目標函數優化C語言
- 下一篇:C語言習題100例最新整理版
評論
共有 條評論