■Cメモ


バイナリで32ビットずつ読み込み


#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(void)
{

    unsigned int tmp;
    FILE *fp;

    if( (fp = fopen("data.bin", "rb")) == NULL ){
	fprintf(stderr, "file open error¥n");
	exit(1);
    }

    while( fread( &tmp, sizeof(int), 1, fp ) != 0 ){
	printf("tmp=%x¥n", tmp);

	printf("R=%x¥n", (tmp>>8  )&0xFF );
	printf("G=%x¥n", (tmp>>16 )&0xFF );
	printf("B=%x¥n", (tmp>>24 )&0xFF );
    }

    fclose( fp );

    return 0;
}


freadへ渡すバッファはポインタなので変数の場合&をつける。

タグ:

+ タグ編集
  • タグ:

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

最終更新:2010年05月05日 20:08