假設我送一個大的緩衝區的ostream ::寫,但只有它的開始部分實際上是成功寫入,其餘不寫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的功能能告訴我有多少字節實際上書面?
與你的問題無關:你不能使用'void main()',並且你有'vector :: vector()'參數的順序倒退。 –
感謝@Robᵩ固定代碼致力於解決這個問題。 –