这个如何改正

x363635334 2012-03-20 12:21:19
for(int j=0;j<(!i?12:7);j++)
m++;

前面有个变量i决定循环次数,如果i为0则循环12次,否则循环7次;可是运行起来是个无限循环,怎么回事?
...全文
196 15 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
x363635334 2012-03-24
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 bigbaldy 的回复:]
楼主代码没问题呀,VS2010正常运行,i=0循环12次,i=1循环7次,!本来就是最高优先级
[/Quote]

是啊,我在2楼说清楚了,非的优先级应该比条件算符高;VS10测试无误了
至于调试时的识别也不纠结了,就按3楼老赵的那个来吧
wizard_tiger 2012-03-22
  • 打赏
  • 举报
回复
LZ优先级的问题,还是写LS的代码好些。
猪头小哥 2012-03-22
  • 打赏
  • 举报
回复
看那样的代码~~~~你会看吗?
xuer2016 2012-03-22
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 zhao4zhong1 的回复:]
KISS-Keep It Simple and Stupid.
[/Quote]
学习
赵4老师 2012-03-22
  • 打赏
  • 举报
回复
KISS-Keep It Simple and Stupid.
pathuang68 2012-03-22
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 cwallow 的回复:]

楼上正解,lz可以换个角度,这样代码虽然多了,但不失为一个好办法
[/Quote]

是的,尽管代码多了些,但是执行速度会更快。因为如果在for(...)中获得循环的次数,那么每次循环都要重新计算一次循环次数,而赵大侠在3楼给出的代码,循环次数只需要计算一次。
bigbaldy 2012-03-22
  • 打赏
  • 举报
回复
楼主代码没问题呀,VS2010正常运行,i=0循环12次,i=1循环7次,!本来就是最高优先级
camel_lzd 2012-03-21
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 zhao4zhong1 的回复:]
if (i==0) n=12; else n=7;
for(int j=0;j<n;j++) {
m++;
}
[/Quote]
这种方法是好点吧。。建议用这个。。你的问题还是优先级的问题
michael_leslie_yue 2012-03-20
  • 打赏
  • 举报
回复
哈哈。 我还是觉得简单易懂的代码好点。
小坏猪猪 2012-03-20
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 x363635334 的回复:]
好了,原来执行次数对的,就是监视表达式j<(!i?12:7)的时候提示cxx0017 没有找到符号i?12
无法正常看表达式的真假了... 是ide无法识别了?
[/Quote]

这样的代码在实际项目中最好按照3楼的进行修改,出现这样现象主要是优先级的问题。




********************************************************************************
* C++经典之作下载链接:http://blog.csdn.net/jerryjbiao/article/details/7358796 *
********************************************************************************
吾子墨鸿 2012-03-20
  • 打赏
  • 举报
回复
优先级不对,价格括号就行了
for(int j=0;j<((!i)?12:7);j++)
m++;
DyanWang 2012-03-20
  • 打赏
  • 举报
回复
楼上正解,lz可以换个角度,这样代码虽然多了,但不失为一个好办法
赵4老师 2012-03-20
  • 打赏
  • 举报
回复
if (i==0) n=12; else n=7;
for(int j=0;j<n;j++) {
m++;
}

x363635334 2012-03-20
  • 打赏
  • 举报
回复
csdn把我2楼的帖子吃掉了,汗..
x363635334 2012-03-20
  • 打赏
  • 举报
回复
好了,原来执行次数对的,就是监视表达式j<(!i?12:7)的时候提示cxx0017 没有找到符号i?12
无法正常看表达式的真假了... 是ide无法识别了?

33,321

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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