黑马程序员技术交流社区

标题: 问个问题 [打印本页]

作者: 黑马是马    时间: 2016-10-17 11:09
标题: 问个问题
死循环是什么类型的错误,语法错误还是动态语义错误,还是静态语义错误

作者: 天河边吃紫英    时间: 2016-10-17 11:36
应该是语法错误,没有出口

作者: 哦啊啊    时间: 2016-10-17 12:03
死循环没有错误,错误的是下面那行代码,因为进不去

作者: IceLoveInFire丶    时间: 2016-10-17 12:22
死循环不是错误,反而某种情况下还需要死循环。

作者: barny    时间: 2016-10-17 12:43
死循环语法上也是没有错误的,只是到最后会内存溢出
作者: gyy    时间: 2016-10-17 12:53
     死循环,并非是语法上的错误,并不是楼主所说的语法错误或者动态语义错误,抑或静态语义错误。死循环是一种逻辑错误!!!!在Thinking  In Java中说过,循环只是用来描述事物的一种演变的过程而已。也并非会出现栈溢出,栈溢出发生在函数调用上面。也就是递归调用,因为每一个程序都会有一个栈,栈会记录你的函数调用过程。而循环,是CPU的寄存器中存储下一段代码执行地址。cpu的执行指针会逐步的去遍历地址,从而找到下一段代码。说了这么度不知道你懂了没有?
作者: 黑马-小旭哥    时间: 2016-10-17 13:45
gyy 发表于 2016-10-17 12:53
死循环,并非是语法上的错误,并不是楼主所说的语法错误或者动态语义错误,抑或静态语义错误。死循环 ...

循环是不是只用到一个本函数的栈。 还是每次用一个新的同名函数栈 进栈再出栈。一直这样循环

作者: gyy    时间: 2016-10-18 00:48
黑马-小旭哥 发表于 2016-10-17 13:45
循环是不是只用到一个本函数的栈。 还是每次用一个新的同名函数栈 进栈再出栈。一直这样循环
...

不是,jvm是用栈来描述函数的调用过程,函数本身不存在栈之说。循环只是一种操作,并非是函数调用,当然了,递归除外。不知道你明白没有
作者: fdzx0707fh    时间: 2016-10-18 23:25
gyy 发表于 2016-10-17 12:53
死循环,并非是语法上的错误,并不是楼主所说的语法错误或者动态语义错误,抑或静态语义错误。死循环 ...

受教了,谢谢!
作者: gyy    时间: 2016-10-18 23:29
fdzx0707fh 发表于 2016-10-18 23:25
受教了,谢谢!

不客气,哈哈,能不能赏一点黑马金币,谢谢了,原谅我这么厚颜无耻{:2_34:}
作者: fdzx0707fh    时间: 2016-10-18 23:35
gyy 发表于 2016-10-18 23:29
不客气,哈哈,能不能赏一点黑马金币,谢谢了,原谅我这么厚颜无耻 ...

同学  大家都一样{:2_44:}
作者: fdzx0707fh    时间: 2016-10-18 23:36
gyy 发表于 2016-10-18 23:29
不客气,哈哈,能不能赏一点黑马金币,谢谢了,原谅我这么厚颜无耻 ...

先兑换一些技术分,升到中级可以发帖赚,
作者: gyy    时间: 2016-10-18 23:37
fdzx0707fh 发表于 2016-10-18 23:35
同学  大家都一样

哈哈哈,好吧,加油,少年
作者: gyy    时间: 2016-10-18 23:38
fdzx0707fh 发表于 2016-10-18 23:36
先兑换一些技术分,升到中级可以发帖赚,

ok,谢谢小伙
作者: 薄拉图图图    时间: 2016-10-18 23:45
马克下






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2