typedef struct
{
int row;
int col;
int max_gray;
int **matrix;
} PGMData;
void readPGM(const char *file_name, PGMData *data)
{
FILE *pgmFile;
char version[3];
int i, j, tmp;
int lo, hi;
SkipComments(pgmFile);
fscanf(pgmFile, "%d", &tmp);
printf("d");
data->col=tmp; // error here
printf("d");
SkipComments(pgmFile);
fscanf(pgmFile, "%d", &tmp);
data->row=tmp;
SkipComments(pgmFile);
fscanf(pgmFile, "%d", &tmp);
data->max_gray=tmp;
fgetc(pgmFile);
}
您好。我尝试将int tmp分配给struct data的col,但是当我执行printf
时它无法显示printf("%d",data->col);
我使用->
代替.
,但它说它不是结构。因为它是结构指针,所以我只能使用->
。
在代码中我写错误就在这里。它首先打印d
但不能打印第二个d
,程序关闭。错误是什么?
我把&到tmp但仍然是相同的。