|
#include "stdafx.h"
#include <windows.h>
int main(int argc, char* argv[])
{
if ( argc < 2 ) {
printf( "%s\n", "引数にファイルのパスを指定して下さい" );
return 0;
}
FILE *fp;
fp = fopen( argv[1], "rb" );
if ( fp == NULL ) {
printf( "%s がOPENできませんでした\n", argv[1] );
return 0;
}
BITMAPFILEHEADER bfh;
//typedef struct tagBITMAPFILEHEADER {
// WORD bfType;
// DWORD bfSize;
// WORD bfReserved1;
// WORD bfReserved2;
// DWORD bfOffBits;
//} BITMAPFILEHEADER;
fread( (void *)&bfh, sizeof(bfh), 1, fp );
printf( "%c%c\n", bfh.bfType % 256, bfh.bfType / 256 );
printf( "ファイルのサイズ = %d\n", bfh.bfSize );
BITMAPINFOHEADER bih;
//typedef struct tagBITMAPINFOHEADER{
// DWORD biSize;
// LONG biWidth;
// LONG biHeight;
// WORD biPlanes;
// WORD biBitCount
// DWORD biCompression;
// DWORD biSizeImage;
// LONG biXPelsPerMeter;
// LONG biYPelsPerMeter;
// DWORD biClrUsed;
// DWORD biClrImportant;
//} BITMAPINFOHEADER;
fread( (void *)&bih, sizeof(bih), 1, fp );
printf( "画像幅 = %d\n", bih.biWidth );
printf( "画像高さ = %d\n", bih.biHeight );
printf( "ピクセルデータのサイズ = %d\n", bih.biSizeImage );
fclose( fp );
return 0;
}
| |