【初心者歓迎】C/C++室 Ver.33【環境依存OK】
■ このスレッドは過去ログ倉庫に格納されています
0515デフォルトの名無しさん
2006/12/22(金) 20:35:31flockが今ひとつ、わからないんですが質問させてください。
下のプログラムで
1、�@があると出力は、"ここ"
2、�@がないと出力は "ここ:whileに入れました:hogehoge"
になります。
どちらも!finのエラーはないので、fin.open("hoge.txt");
ではオープンできてるみたいなのですが、
2、ではgetlineでなにも読めていないようで不思議です。
なんだか、自分でロックして自分が読み込めなくなってるんですが。。。
ロックしてから、読み込んで、表示ということがしたいです。
どのように修正すればよいのでしょうか。
--------------------------------------------------
#hoge.txtの内容:"hogehoge"
プログラム:
// #include <iostream> <fstream> <string>
int n = open("hoge.txt",O_RDWR);
flock(n,LOCK_EX |LOCK_NB);//・・・�@
std::ifstream fin;
fin.open("hoge.txt");
if(!fin){ printf("err:fin");}
std::string s;
printf("ここ");
while(getline(fin,s)){
printf(":whileに入れました:");
std::cout << s << std::endl;
}
close(n);
■ このスレッドは過去ログ倉庫に格納されています