问题描述
readData应该从.ppm文件中读取Image结构,写入数据应将其PPM格式的Image结构写入标准输出,而免费的图像应释放Image对象。
#include <stdio.h>
#include <stdlib.h>
#include <inttypes.h>
typedef struct Color
{
uint8_t R;
uint8_t G;
uint8_t B;
} Color;
typedef struct Image
{
Color **image;
uint32_t rows;
uint32_t cols;
} Image;
//Loads an image from a ppm file,and converts to an Image object
extern Image *readData(char *filename);
//Writes an image to stdout
extern void writeData(Image *image);
//Frees an image and all its associated data
extern void freeImage(Image *image);
解决方法
我们可以使用fscanf,它忽略空格和换行符。 这将有助于读取数据并解决问题。