【发布时间】:2014-01-16 00:12:39
【问题描述】:
这些代码哪个更好?
do {
fread( ... );
if(!feof(fp)) { ... }
}
while(!feof(fp));
或
while(1){
fread( ... );
if(!feof(fp)) { ... }
else break;
}
谢谢。
【问题讨论】:
-
我会选择第一个......因为无限循环很危险!
-
fread不能那样工作... -
什么意思,它应该如何工作?
-
嗯,不,另一个:
for (;;) {} -
你应该检查 fread() 的输出。而且我相信 for(;;) 更快,因为它不需要评估任何东西。
标签: c performance while-loop infinite-loop do-while