我想写一个int数组到一个fstream,但我收到一个异常,当我打电话fstream.write
。C++写入int缓冲区
我可以使用fstream
来将int数组写入文件吗?
int main(int argc, char * argv[])
{
fstream amostra("D:\\Amostra.txt", ios::out | ios::binary);
const int total_elements_block = 1024;
const int buffer_size = total_elements_block;
const int total_buffer = 10;
int * buffer = new int [buffer_size];
//for (int j=0; j<total_buffer; j++){
for (int i =0; i<total_elements_block; i++){
buffer[i] = i;
}
amostra.write((char *)(&buffer), total_elements_block*4);
//}
amostra.close();
delete []buffer;
return 0;
}
“我可以使用fstream在文件中写入一个int缓冲区吗?”如果你正确格式化,fstream可以写任何你想要的文件。简单的回答:是的。如果你想要_actual code_请求,而不是一个简单的布尔答案。 – TheZ
请发布你得到的例外。 –
您应该使用total_elements_block * sizeof(buffer [0]),以便安全/便携:-) –