20131013【C言語】配列の中身を一度に書き込む
お題
配列の中身を一度にファイルに書き込む
プログラム概要
10個の要素を持つ浮動小数点型の配列を用意し、
fwriteを使って一度でファイルに書き込む。
その後、そのファイルを読み込んで
一度で配列に読み込み、配列の要素を画面に表示する。
ソース
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int i;
FILE *fp;
double d[10] = {
1.1, 1.2, 1.3, 1.4, 1.5,
1.6, 1.7, 1.8, 1.9, 2.0
};
if *1 == NULL) {
fprintf(stderr, "Cannot open myfile.\n");
exit(1);
}
/* Write array to file */
if (fwrite(d, sizeof d, 1, fp) != 1) {
fprintf(stderr, "Error while writing.\n");
exit(1);
}
fclose(fp);
if *2 == NULL) {
fprintf(stderr, "Cannot open myfile.\n");
exit(1);
}
/* Clear array */
for (i = 0; i < 10; i++)
d[i] = -1.0;
/* Read array from file */
if (fread(d, sizeof d, 1, fp) != 1) {
fprintf(stderr, "Error while read myfile.\n");
exit(1);
}
fclose(fp);
/* Print array */
for (i = 0; i < 10; i++)
printf("%f ", d[i]);
return 0;
}
実行結果
1.100000 1.200000 1.300000 1.400000 1.500000 1.600000 1.700000 1.800000 1.900000 2.000000