0

3D解析画像のボクセル情報を読み取ろうとしていました。サンプルコード:

#include <stdio.h>

void main() {
    unsigned int R,G,B;
    unsigned char data[3];
    FILE *fp, *ft;
    fp = fopen("67.img", "rb");
    ft = fopen("OUT.txt", "w");
    while (fread(data, 3, 1, fp) == 1) {
        R = data[0];
        G = data[1];
        B = data[2];
        fprintf(ft, "%u,%u,%u:", R, G, B);        
    }
}

しかし、「Out.txt」では、期待される RGB 値が得られません。

ヘッダー情報ヘッダー情報:

私はCの初心者です。助けてください。

4

1 に答える 1

0

fread is size_t fread ( void * ptr, size_t size, size_t count, FILE * stream );

サイズは 1 で、カウントは 3 である必要があります。それらとwhileループを切り替えて、それが機能するかどうかを確認します。

于 2013-09-15T09:29:13.730 に答える