[讨论] 不明不白的死循环

powerfulstyle   2014-8-1 22:45 楼主
最近遇到一个非常不解的问题,一个寻常的for循环,却无缘无故的陷入了死循环。试过很多种写法还是没调试出来,贴出来让大家讨论一下。
  • 下面P10=0;为调试语句,程序执行不到这个语句。大说说这是什么原因

回复评论 (12)

你怎么确认程序没有执行到P10=0的
生活就是油盐酱醋再加一点糖,快活就是一天到晚乐呵呵的忙 =================================== 做一个简单的人,踏实而务实,不沉溺幻想,不庸人自扰
点赞  2014-8-1 23:28
楼主代码是个奇葩,你见过字符和字符串比较吗?
点赞  2014-8-1 23:47
引用: chenzhufly 发表于 2014-8-1 23:28
你怎么确认程序没有执行到P10=0的

这是调试语句,烧进单片机里面就知道了
点赞  2014-8-3 19:05
引用: lcofjp 发表于 2014-8-1 23:47
楼主代码是个奇葩,你见过字符和字符串比较吗?

这位朋友,你在哪里见到的字符和字符串比较了?
点赞  2014-8-3 19:06
其他地方找找原因吧,仅此不至于死循环.
点赞  2014-8-3 21:27
引用: powerfulstyle 发表于 2014-8-3 19:06
这位朋友,你在哪里见到的字符和字符串比较了?

JD != "" 这个你是怎么理解的?这样的语句没有警告?能符合你的要求?
点赞  2014-8-4 08:33
引用: lcofjp 发表于 2014-8-4 08:33
JD != "" 这个你是怎么理解的?这样的语句没有警告?能符合你的要求?

空串等同于0吧
点赞  2014-8-4 10:57
引用: huo_hu 发表于 2014-8-4 10:57
空串等同于0吧

什么叫字符串理解吧,难道空串就不是字符串了?
字符串的值就是它的首地址,学过C的人都知道,字符串是不能用==或者!=来比较的。
点赞  2014-8-4 11:49
你用什么软件编译,应该编译不过去。
点赞  2014-8-4 14:54
引用: 栾鸥 发表于 2014-8-4 14:54
你用什么软件编译,应该编译不过去。

编译没问题,问题出在数组那里,已解决!
点赞  2014-8-4 21:04
除非数组改指向地址。
点赞  2014-8-6 10:18
数组范围不对。
专业电子方案/zigbee方案设计,毕业设计。QQ:1397905781
点赞  2014-8-6 15:55
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复