The verbal descriptions take a while to read through to get a feel for the expected results for fopen modes. This csv table can help break it down for quicker understanding to find which mode you are looking for:Mode,Creates,Reads,Writes,Pointer Starts,Truncates File,Notes,Purposer,,y,,beginning,,fails if file doesn't exist,basic read existing filer+,,y,y,beginning,,fails if file doesn't exist,basic r/w existing filew,y,,y,beginning+end,y,,"create, erase, write file"w+,y,y,y,beginning+end,y,,"create, erase, write file with read option"a,y,,y,end,,,"write from end of file, create if needed"a+,y,y,y,end,,,"write from end of file, create if needed, with read options"x,y,,y,beginning,,fails if file exists,"like w, but prevents over-writing an existing file"x+,y,y,y,beginning,,fails if file exists,"like w+, but prevents over writing an existing file"c,y,,y,beginning,,,open/create a file for writing without deleting current contentc+,y,y,y,beginning,,,"open/create a file that is read, and then written back down"