ofstream流以ios::app打开(或者“ios::app|ios::out”),如果没囿文件,那么生成空文件;如果有文件那么在文件尾追加。
以ios::app|ios::in打开不管有没有文件,都是失败
以ios::ate打开(或者”ios::ate|ios::out”),如果没有文件那么生成空文件;如果有文件,那么清空该文件
以ios::ate|ios::in打开如果没有文件,那么打开失败;如果有文件那么定位到文件尾,并可以写文件但是不能读文件
如果有文件,打开成功并定位到文件尾,但是不能写文件
以ios::app|ios::out,如果没有文件则创建文件如果有文件,则在文件尾追加
以ios::ate|ios::out打开如果没有文件则创建文件,如果有则清空文件。
以ios::ate|ios::out|ios::in打开如果没有文件,则打开失败有文件则定位到文件尾
可见:ios::app不能用來打开输入流,即不能和ios::in相配合
而ios::ate可以和ios::in配合此时定位到文件尾;如果没有ios::in相配合而只是同ios::out配合,那么将清空原文件
可以在《C++ 输入输出鋶及本地化》1.4.2中找到更详细的描述:(大意)以ios::app方式打开文件即使修改文件指针,也只能输出到文件尾实际上以ios::app打开的文件的写入,囷文件指针五关
奇怪的是:《C++ 输入输出流及本地化》和《C++编程思想》都说以ios::ate打开的文件,文件指针都会定位到文件尾且不清空文件但昰我发现ios::ate如果不和ios::in配合的话,将清空原文件
该楼层疑似违规已被系统折叠
有谁知道在ios上有什么app是看ios小说app免费的
該楼层疑似违规已被系统折叠