Fopen's mode

Source: Internet
Author: User

Transfer from http://blog.csdn.net/todd911/article/details/8976543

R to open a read-only file, the file must exist.

The r+ has read and write properties, starting with the file header and preserving content that is not overwritten in the original file. The file must exist.

W Open Write-only file, if the file exists then the file length is clear to 0, that is, the contents of the file will disappear. If the file does not exist, the file is created.
w+ Open a read-write file, if the file exists then the file length is clear to zero, that is, the contents of the file will disappear. If the file does not exist, the file is created.


A write-only file opens in an additional way. If the file does not exist, the file will be created, and if the file exists, the data written will be added to the end of the file, that is, the original content of the file will be retained.
A + opens readable and writable files in an additional way. If the file does not exist, the file will be created, and if the file exists, the data written will be added to the end of the file, that is, the original content of the file will be retained.

A and A + online are as follows:
The "a" mode does not clear the EOF flag until the data is added. After adding the data, the MS-dos TYPE command only displays the data to the original EOF flag and does not appear to be added later.
The "A +" mode clears the EOF flag and displays all data with the MS-dos TYPE command after the data is added. The "A +" mode requires a stream input that ends with the CTRL + Z EOF flag.

But I experimented with Linux, using a and A +, writing the same characters, no EOF is the same problem:
For example, the original file content is ABC, if using a mode added 123, then read the file, encountered EOF stop the output, the last display abc123, if according to the above, should only show ABC.
If you use a + mode, the final display is also abc123.
So the above statement is not established under Linux, it may be used under Windows.

Finally, the description in the man fopen in Linux:

A Open for appending (writing at end of file).  The file is created if it does not exist. The
Stream is positioned at the end of the file.

A + Open for reading and appending (writing at end of file). The file is created if it does not
Exist. The initial file position for reading are at the beginning of the file, but output is
Always appended to the end of the file.

There is no mention of EOF on the above.

Fopen's mode

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.