質問編集履歴

2 確認用のプログラムを追加

naka_prg

naka_prg score 10

2015/09/16 23:23  投稿

C言語でバイナリファイルファイルから読み込み二次元配列へ代入する方法
###前提・実現したいこと
学校の課題で簡単なパズルゲームみたいなものをC言語で作っています。
マップデータを16進数のバイナリファイルから読み込み、二次元配列へ代入したいのですが思うように動きません。
アドバイスよろしくおねがいします。
###ソースコード
自分の実行環境ではブルースクリーンになってしまいました。ご注意ください。
```c
/*******************************************************
*       バイナリファイルから二次元配列へ
*
*///****************************************************
#include <stdio.h>
int main(void)
{
   FILE *fp ;
   unsigned char *p ;
   unsigned char dt ;
   unsigned char Qmap_001[13][13];
   p = &Qmap_001[0][0];
   fp = fopen("test.bin", "rb");
   /*---EOFにはFFが入っているためそれを表示しない対策---
   // ループの中の処理の最初に表示させて
   //最初の数字は先に読み込んでおく
   */
   dt = fgetc(fp);
   while (feof(fp) == 0)
   {
       dt = fgetc(fp);
       *p = dt;
       (*p)++;
   }
     
   //配列に入ったかどうか確認  
   int x , y ;  
   for( y = 0 ; y < 13 ; y++ ) {  
       for( x = 0 ; x < 13 ; x++ ) {  
           printf( "0x%02x ," , Qmap_001[y][x] ) ;  
       }  
   }  
   fclose(fp);
   return 0;
}
```
###補足情報(言語/FW/ツール等のバージョンなど)
gccコンパイラ
```
  • C

    4949 questions

    C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

1 ソースの掲載

naka_prg

naka_prg score 10

2015/09/16 22:30  投稿

C言語でバイナリファイルファイルから読み込み二次元配列へ代入する方法
###前提・実現したいこと
学校の課題で簡単なパズルゲームみたいなものをC言語で作っています。
マップデータを16進数のバイナリファイルから読み込み、二次元配列へ代入したいのですが思うように動きません。
アドバイスおねがいします。
アドバイスよろしくおねがいします。
###ソースコード
自分の実行環境ではブルースクリーンになってしまいました。ご注意ください。
```c
/*******************************************************
*       バイナリファイルから二次元配列へ
*
*///****************************************************
#include <stdio.h>
int main(void)
{
   FILE *fp ;
   unsigned char *p ;
   unsigned char dt ;
   unsigned char Qmap_001[13][13];
   p = &Qmap_001[0][0];
   fp = fopen("test.bin", "rb");
   /*---EOFにはFFが入っているためそれを表示しない対策---
   // ループの中の処理の最初に表示させて
   //最初の数字は先に読み込んでおく
   */
   dt = fgetc(fp);
   while (feof(fp) == 0)
   {
       dt = fgetc(fp);
       *p = dt;
       (*p)++;
   }
   fclose(fp);
   return 0;
}
```
###補足情報(言語/FW/ツール等のバージョンなど)
gccコンパイラ
gccコンパイラ
```
  • C

    4949 questions

    C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る