私は人生のゲームを実装して、今ではすべての新しい生成フィールドをgifまたはpbmに入れなければなりません。最後にアニメーションgifを作成するコマンドを使用します。Cでの人生のゲーム、どのようにファイルに書き込むのですか?
以下の関数は与えられていますが、最初のパラメータであるポインタconst charを取得できません。私はファイル名である関数を見ていますが、どのように書くのですか、私は本当に混乱しています。
while(iterations > 0) {
write_pbm_file(..., pstField);
pstField = game_iteration(pstField);
iterations--;
}
私はこのファイルを作成するためには何を書くべき:私は上記の関数を取得コードです
static int write_pbm_file(const char *fn, struct game_field *gf) {
int i, j;
FILE *fp;
fp = fopen(fn, "w+");
if(!fp){
printf("unable to open '%s' - '%s'\n", fn, strerror(errno));
return -1;
}
fprintf(fp, "P1\n");
fprintf(fp, "%c\n", gf->length);
fprintf(fp, "%c\n", gf->length);
for(i = 0; i < gf->length; i++)
for(j = 0; j < gf->length; j++)
fprintf(fp, "%c\n", gf->field[i][j] == 0 ? 48 :
gf->field[i][j] == 1 ? 219 : 197);
fclose(fp);
return 0;
}
?助けてください
ありがとう!
その解決策は完璧です、それは新しいフィールドごとに新しいファイルを作成して動作します。私はLinuxのatmを持っていない、割り当ては、匿名のpbmで変換するために次を与えている: convert -delay 75 -loop 0フィールド* game_of_life.gif 2つの質問:変換はWindows 7 x64では動作しません。その他の方法で? フィールド*の代わりに何を取るべきですか? file-NUM.pbmという10個のファイルがありますか?このコマンドでは何を書きますか? 本当にありがとうございます! – pfu
convertはImageMagickの一部です:http://www.imagemagick.org/script/binary-releases.php#windowsの代わりにフィールド*を試してみてください。* .pbm –
hmはうまく動作しますが、gifは作成されますがアニメーション化されません。 pbmファイルはすべて異なっていますが、GIFは静的です。アニメーションはありません。私のスキルはうそです。私は初心者です^^ – pfu