qwertypkgg 2017-01-03 03:05 采纳率: 75%
浏览 999
已采纳

C++ 指针函数打开文件类型意义

int lines()
{
FILE *fp;
int line=0;
int filesize=0;
char ch=0;

if((fp=fopen("c:\filename.txt","r"))==NULL)
fp=fopen("c:\filename.txt","w");

fseek(fp,0,SEEK_END);//将指针移到文件末尾
filesize=ftell(fp);//获得文件的总的大小

fseek(fp,0,SEEK_SET);//将文件指针移到文件开头
 // printf("wenjianyigongyou %d da",filesize);
    while(filesize)
{
    ch=fgetc(fp);
    if(ch==0x0a)//0x0a表示换行,当每次换行时line++
    {
        line=line+1;
    }
    filesize--;//filesize为零时整个文件已经读完,判断结束
}

// printf("通讯录中一共有 %d个记录\n",line);
fclose(fp);
return line;
}

帮忙解释一下 具体一点 thx

  • 写回答

2条回答

  • threenewbee 2017-01-03 03:43
    关注

    第一次指向末端是为了获得文件长度,第二次又指向前端,是统计行数

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料