一道关于死循环的面试题

kaifaye 2010-11-12 12:27:56
老话题了,但我没能搜到标准的答案


问:for(;;)和while(1)有什么区别?


主要就是效率上吧,大家怎么看?
...全文
259 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
gaslinux 2010-11-12
  • 打赏
  • 举报
回复
没经过优化for(;;)效率高些,经过优化都一样。
luciferisnotsatan 2010-11-12
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 shenyulv 的回复:]

http://topic.csdn.net/t/20011003/23/311066.html
[/Quote]
+1

不过讨论这个的效率没什么意义
liups 2010-11-12
  • 打赏
  • 举报
回复
这个应该是编译器决定的吧,考虑到优化估计应该是一样的
dfatfat 2010-11-12
  • 打赏
  • 举报
回复
for(;;)
黎翔 2010-11-12
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 libinfei8848 的回复:]

优化后他们的汇编都一样
[/Quote]
marking
  • 打赏
  • 举报
回复
我觉得。。。你的编译器如果有优化,才不会管你怎么写,最后都是它写成一样的。
zhutianjin4355255 2010-11-12
  • 打赏
  • 举报
回复
没啥区别,不过建议楼主用while
libinfei8848 2010-11-12
  • 打赏
  • 举报
回复
优化后他们的汇编都一样
ForestDB 2010-11-12
  • 打赏
  • 举报
回复
看汇编码。
现代编译都会生成优化代码:
jmp
Athenacle_ 2010-11-12
  • 打赏
  • 举报
回复
前一段时间刚讨论过这个问题。。。
其实现在强悍的编译器都优化成一样的了~》。。。

70,020

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧