I do not understand the difference between the "ab"
and "rb+"
modes when using fopen()
in C.
Why would I choose one instead of the other?
With the mode specifiers above the file is open as a text file. In order to open a file as a binary file, a
"b"
character has to be included in the mode string. This additional"b"
character can either be appended at the end of the string (thus making the following compound modes:"rb"
,"wb"
,"ab"
,"r+b
","w+b"
,"a+b"
) or be inserted between the letter and the"+"
sign for the mixed modes ("rb+"
,"wb+"
,"ab+"
).
From fopen
documentation which I advise you read before asking questions. It will give you a lot of information about possible parameters, return values, similar functions etc.
Also, from the same document :
"a"
= append : Open file for output at the end of a file. Output operations always write data at the end of the file, expanding it. Repositioning operations (fseek
,fsetpos
,rewind
) are ignored. The file is created if it does not exist.
"r+"
= read/update : Open a file for update (both for input and output). The file must exist.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.