今天在看程序代码时看到 >>>>
if ((fp2=fopen(argv[2],"wa+"))==NULL)
{
printf("cannot creat file %s",argv[1]);
return -1;// exit(1);
}
这样一段代码;大家都知道在fopen函数(文件名,文件使用方式)中,文件使用方式‘+’是可读写的意思;而w是write就是写的意思,如果要操作的文件已经存在,则会覆盖原文件写;a是append就是追加的意思,如果要操作的文件已经存在,则会在原文件后面追加写。
在上面程序代码中,我就迷茫了,wa到底怎么操作,也就是说如果原文件存在,那到底是追加写还是覆盖写?![]()
经过试验证明如果写成“wa+”,那么效果跟“w+”效果是一样的;如果写成“aw+”,那么跟“a+”效果是一样的。即,哪个参数在前,则该参数的优先级高一些