while(!fin.eof()) { fin>>dati; if (strcmp(parola,dati)==0) contatore++; }

[复制链接]
查看11 | 回复1 | 2010-12-23 03:44:02 | 显示全部楼层 |阅读模式
麻烦高手详细解释一下这段的意思。
请问一下,fin.eof()还有strcmp(parola,dati)==0是什么意思?还有fin>>dati
我是自学的,所以好多地方不懂,还望高手指导~

回复

使用道具 举报

千问 | 2010-12-23 03:44:02 | 显示全部楼层
一段输入流处理程序。从变量的命名习惯上来看,估计是从一个文件中逐个读入字符串,然后再进行字符串比较。程序目的是:统计文本文件(fin)中含有多少个字符串(parola)。当未遇到流结束符进行以下循环:1.流缓冲区数据赋值给变量dati;--》fin>>dati;即从文件fin中读入一个字符串,同时文件指针指向下一字符;2.将变量dati内容与变量parola进行比较;---》strcmp(parola,dati),该函数的返回值:parola>dati,返回大于0;parola=dati,返回0;parola<dati,返回小于0。所以程序写成:strcmp(parola,dati)==0,通过返回值来判断两个变量的是否相等。3.如
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行