我正在尝试编写简单的 pgm 文件读取 C 程序。我必须创建简单的结构:
typedef struct pgmImage {
int R; //rows
int C; //collumns
int G; //grey scale
int **pix; // array of pixels
}Image;
现在我必须初始化空图像结构。我需要一个在其他函数中基于 *.pgm 文件设置所有变量。 我一直收到“无法读取内存”和“已使用未初始化局部变量 x”的信息。我试着简单地做:
Image *x=0;
但是当读取函数尝试设置 R、C、G 值时程序崩溃。
最佳答案
如果你想要一个指向 Image 的指针,你必须像这样初始化。
Image *x = NULL;
像这样访问图像 (x) 阵营:
x-> C = 0;
x-> ...
x->pix = NULL;
但首先您需要为图像分配内存。
x = (Image*) malloc(sizeof(Image));
关于c - 如何在主函数中初始化结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13324347/