1

高さのリスト (高さマップ) を取り込んで風景を吐き出す OpenGL を使用したプログラムを作成しようとしています。マップを読み込んでいるときに問題が発生しています。値を読み取り、配列 (高さ) に格納するためのループとして、以下のコードがあります。正常にコンパイルされて実行されますが、ループの最後の反復でハングアップし、i=rows のポイントまですべてが正常に出力され、「行の読み取り完了」が出力されず、ハングアップします。

printf("reading in the height map\n");
for(i=0; i < rows; i++){
   printf("read in row start\n");
   for(j=0; j < cols; j++){
      scanf("%f", &cur_height);
      heights[point].x = j;
      heights[point].y = i;
      heights[point].z = cur_height;
      point++;
      printf("%d %d\n",j, cols);
   }
   printf("%d\n", point);
   printf("read in row finish");
}

編集:また、少し余分なコンテキストの高さが配列またはポイントであるため、次のように宣言されます。

#define NUM_POINTS 202750
typedef struct point_type{
   float x, y, z;
} pt_t;
pt_t heights[NUM_POINTS];
4

1 に答える 1

1

ループで正しい条件を使用する

for(i=0; i<rows; i++)

for(j=0; j<cols; j++)
于 2013-04-28T05:32:43.040 に答える