ostream::write に大きなバッファを送信したとしますが、実際には最初の部分だけが正常に書き込まれ、残りは書き込まれていません。
int main()
{
std::vector<char> buf(64 * 1000 * 1000, 'a'); // 64 mbytes of data
std::ofstream file("out.txt");
file.write(&buf[0], buf.size()); // try to write 64 mbytes
if(file.bad()) {
// but suppose only 10 megabyte were available on disk
// how many were actually written to file???
}
return 0;
}
実際に書き込まれたバイト数を教えてくれる ostream 関数は何ですか?