Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Wiki Markup
The C standard identifies specific strings to use for the {{mode}} on calls to {{fopen()}} \[[ISO/IEC 9899-1999|AA. C References#ISO/IEC 9899-1999]\] . To be strictly conforming and portable, you must use one of these stringsone of the strings from the following table (adapted from the C standard) must be used:

mode string

Result

r

open text file for reading

w

truncate to zero length or create text file for writing

a

append; open or create text file for writing at end-of-file

rb

open binary file for reading

wb

truncate to zero length or create binary file for writing

ab

append; open or create binary file for writing at end-of-file

r+

open text file for update (reading and writing)

w+

truncate to zero length or create text file for update

a+

append; open or create text file for update, writing at end-of-file

r+b or rb+

open binary file for update (reading and writing)

w+b or wb+

truncate to zero length or create binary file for update

a+b or ab+

append; open or create binary file for update, writing at end-of-file

...

An implementation may define additional mode strings, but only the modes in the following table (adapted from the C99 standard) above table are fully portable and C99 compliant:.

Risk Assessment

Using a mode string that is not recognized by an implementation may cause the call to fopen() to fail.

...