有以下程序段 FILE *fp; if( (fp=fopen("test.txt","w")) == NULL) { printf("不能打开文件!"); exit(0);} else

admin2021-02-25  45

问题 有以下程序段
    FILE *fp;
    if( (fp=fopen("test.txt","w")) == NULL)
        {   printf("不能打开文件!");
            exit(0);}
    else
         printf("成功打开文件!");
若文件test.txt已存在,则以下叙述正确的是

选项 A、程序运行后,文件test.txt中的原有内容将全部消失
B、程序运行时,会因文件存在而出错
C、对文件test.txt进行写操作后,可以随机进行读取
D、对文件test.txt写入的内容总是被添加到文件尾部

答案A

解析 fopen函数以一定方式打开指定文件,返回一个指向文件的文件指针,如果不能实现打开指定文件的操作,则返回一个空指针NULL。如果指定文件不存在则创建一个文件名为指定文件名的新文件,然后打开它。在指定文件有错误或者指定文件不存在却不能创建新文件的情况下,打开文件操作错误,返回空指针。本题程序中,文件test.txt已存在,程序运行后,文件test.txt中的原有内容将全部消失,A选项正确。文件原本就存在,不会导致程序出错,会按照指定的方式打开文件,B选项错误。对文件进行写操作,只能对指针指向的位置内容进行写操作,不能随机读写,C选项错误。对文件test.txt写入的内容写到指针所指向的位置,而不是添加在文件尾部,D选项错误。
转载请注明原文地址:https://kaotiyun.com/show/x1tp777K
0

最新回复(0)