アプリ版:「スタンプのみでお礼する」機能のリリースについて

手元に1MBのファイルがあります。
PCの内部ではこのファイル0,1で表現されていますよね?
C言語でその1MBのファイルから01のデータを128ビットずつ読み込んできて処理したいのですが,何をどうやったらいいのか分かりません。
分かる方お願いします。

A 回答 (2件)

#1に加えての回答です。


読み込む領域は
unsigned char ucBuffer[16];
という具合に、unsigned char の配列で定義します。そして各 ucBuffer[i] に対して各ビットに対するビット積を行い、その結果によってビット毎の処理を行います。たとえば、
int i,j;
for ( i = 0; i < 16; i++ )
{
for ( j = 7; j >=0; j-- )
{
int nBit = ( ucBuffer & ( 1 << j ) ) ? 1 : 0 ;
/******/
}
}
とし、コメント部分で nBit の値をもとに各ビットごとの処理を行えばいいのです。
#ただし、実際にはコメント部分では読み込みデータ→ビット値を格納する配列への変換のみを行い、実際の処理は上記の2重ループを抜けたところで行うべきです。
    • good
    • 0
この回答へのお礼

ありがとうございました。
無事解決しました。

お礼日時:2003/11/20 01:49

fopen でファイルを開き(バイナリモードで),


fread で 16 オクテット(128 ビット)ずつ読み込めばよいでしょう。
    • good
    • 0
この回答へのお礼

ありがとうございました。
無事解決しました。

お礼日時:2003/11/20 01:49

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!