加治/研究
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[加治/研究室関連]]
*研究以前の問題 [#b7ec62f1]
**2DCDPのDの値を出力するために、C言語のfile I/Oを使う。 [#o2a90c76]
***float型の配列に対して計算された結果をファイルに出力(と確認) [#a8cd20fe]
-ファイルを開く
--FILE *file;
--file = fopen("filename","wb");
---filenameを書き込み専用(w)、バイナリ(b)モードで開く。なお、ファイルが既に存在している場合はサイズ0で上書き、存在しない場合は新しく作成する。
-ファイルへの書き込み
--fwrite(書き込むデータの入った変数のアドレス、その変数のサイズ、サイズ、file)
---fileはFILE*で指定したもの。
include <stdio.h>
int main()
{
FILE *file;
float a[1000];
float b[1000];
int i;
for(i=0;i<1000;i++)
{
a[i] = i;
}
file = fopen("float.dat", "wb");
fwrite(&a, sizeof(float),1000,file); aの配列を1000個分書き込む
fclose(file); //fopenで違うモードで開くときは一度fcloseしなきゃいけないみたい
;-----------------ここまでが書き込みの作業、下が読み込み(ちゃんと書き込めてるか確認)の作業-----------------
file = fopen("float.dat", "rb");
fread(&b, sizeof(float),1000,file); //後のprintfでちゃんとfloat.datに保存した値から読み出された値を出すために、bという配列で読み込む。(ここがaだったらただ単に代入された値なのかファイルから読み取った値なのかわからない)
for(i=0;i<1000;i++)
{
printf("b[%d] = %f\n",i,b[i]); //float.datから読み込んだ値を出力
}
fclose(file);
return 0;
}
-このプログラムで1000個のfloatの配列がバイナリモードでfloat.datに書き込まれる。
-よくわからんけど、wbにしてもwにしてもrにしてもrbにしてもEmacsとかでfloat.datみてもバイナリになってんだが・・・
終了行:
[[加治/研究室関連]]
*研究以前の問題 [#b7ec62f1]
**2DCDPのDの値を出力するために、C言語のfile I/Oを使う。 [#o2a90c76]
***float型の配列に対して計算された結果をファイルに出力(と確認) [#a8cd20fe]
-ファイルを開く
--FILE *file;
--file = fopen("filename","wb");
---filenameを書き込み専用(w)、バイナリ(b)モードで開く。なお、ファイルが既に存在している場合はサイズ0で上書き、存在しない場合は新しく作成する。
-ファイルへの書き込み
--fwrite(書き込むデータの入った変数のアドレス、その変数のサイズ、サイズ、file)
---fileはFILE*で指定したもの。
include <stdio.h>
int main()
{
FILE *file;
float a[1000];
float b[1000];
int i;
for(i=0;i<1000;i++)
{
a[i] = i;
}
file = fopen("float.dat", "wb");
fwrite(&a, sizeof(float),1000,file); aの配列を1000個分書き込む
fclose(file); //fopenで違うモードで開くときは一度fcloseしなきゃいけないみたい
;-----------------ここまでが書き込みの作業、下が読み込み(ちゃんと書き込めてるか確認)の作業-----------------
file = fopen("float.dat", "rb");
fread(&b, sizeof(float),1000,file); //後のprintfでちゃんとfloat.datに保存した値から読み出された値を出すために、bという配列で読み込む。(ここがaだったらただ単に代入された値なのかファイルから読み取った値なのかわからない)
for(i=0;i<1000;i++)
{
printf("b[%d] = %f\n",i,b[i]); //float.datから読み込んだ値を出力
}
fclose(file);
return 0;
}
-このプログラムで1000個のfloatの配列がバイナリモードでfloat.datに書き込まれる。
-よくわからんけど、wbにしてもwにしてもrにしてもrbにしてもEmacsとかでfloat.datみてもバイナリになってんだが・・・
ページ名: