细说c语言中的“r”“w”“a”
1:r 以可读写方式打开文件r语言 手机版,该文件必须存在
2:w以写方式打开文件r语言 手机版,只能够向文件中写东西,而且如果文件不存在,系统会自动建一个同名的文件,如果文件已经存在,
那么文件中的东西会全部被覆盖:
举个例子:
#include
#include
void main()
FILE *in;
if((in=fopen("filer语言 手机版。
out","w"))==NULL)
printf("file cannot be open");
exit(0);
char ch[20]="microsoft";
fputs(ch,in);
fclose(in);
上面这个程序中,如果我们建的工程下面没有filer语言 手机版。
out,那么会自动建一个filer语言 手机版。out的文件,并在里面写上microsoft内容,
如果已经有了filer语言 手机版。out,那么file。out里面的内容会全部消失,代替的只有microsoft,比如里面内容是my name is yuanqiao,那么程序执行后,里面就只有microsoft
3:a以写方式打开文件r语言 手机版,它和w的区别就是它不会破坏原内容,只是在原内容后面添加输入的内容;同样是上面的例子,里面内容是my name is yuanqiao,程序执行后,里面的内容变成my name is yuanqiaomicrosoft,而且每执行一次,里面的内容会增加一次,比如,我们运行了一次程序后,再执行一次,那么里面的内容会变成my name is yuanqiaomicrosoftmicrosoft
4:r+以读写方式打开文件r语言 手机版,文件可以使用文件的读取方式fgetc fgets fscanf fread读出来,并用putchar puts printf等方式输入到屏幕上,
它和a的写的方式是一样的,这里不再累述r语言 手机版。
5:w+以读写方式打开文件,写的方式和w一样,就是多了一个读取文件的功能r语言 手机版。
6:a+以读写方式打开文件r语言 手机版,和r+没有差别,
大家可以用下面这个程序做实验:
不断的改变打开的方式r语言 手机版,和程序的运行次数,来看程序的执行效果:
#include
#include
void main()
FILE *in;
if((in=fopen("filer语言 手机版。
out","a+"))==NULL)
printf("file cannot be open");
exit(0);
while(!feof(in))
putchar(fgetc(in)); //用putchar将fgetc读取出来的字符一个一个现实到屏幕上r语言 手机版。
char ch[20]="microsoft";
fputs(ch,in); //用fputs将字符串写到文件中r语言 手机版。
fclose(in);
}r语言 手机版。
看你自己怎么定义r语言 手机版。