瀏覽代碼

read/write files, not stdio (Daniel Borca)

tags/vtx-0-2-21112003-freeze
Brian Paul 22 年之前
父節點
當前提交
e5ed2f07d8
共有 1 個檔案被更改,包括 17 行新增5 行删除
  1. 17
    5
      progs/samples/rgbtoppm.c

+ 17
- 5
progs/samples/rgbtoppm.c 查看文件

@@ -256,18 +256,30 @@ int main(int argc, char **argv)
{
int width, height;
GLubyte *data;
char buff[32];
int n;
FILE *fo;

if (argc != 2)
if (argc != 3)
{
fprintf(stderr, "usage: %s <filename>\n", argv[0]);
fprintf(stderr, "usage: %s <infile.rgb> <outfile.p6>\n", argv[0]);
return 1;
}

data = read_rgb_texture(argv[1], &width, &height);

printf("P6\n%d %d\n255\n", width, height);
fwrite(data, width * 3, height, stdout);
n = sprintf(buff, "P6\n%d %d\n255\n", width, height);

/* [dBorca] avoid LF to CRLF conversion */
if ((fo = fopen(argv[2], "wb")) == NULL) {
fprintf(stderr, "Cannot open output file!\n");
exit(1);
}

fwrite(buff, n, 1, fo);
fwrite(data, width * 3, height, fo);

fclose(fo);

return 0;
}


Loading…
取消
儲存