虽然懂了。但是平时要注意哎
来源:互联网 发布:java mvc模式 编辑:程序博客网 时间:2024/04/20 01:51
大家来分析一下以下程序的错误之处。
有程序片段:
int A,B,C,m=1,n=0;
A=(--m=n++)?- -m:++n;
B=++m;
C=n--;
自我分析:程序第二行是个三目运算后赋值给A,首先判断条件:--m=n++成立与否?按照以前的认识,--m与m--的区别是:前者先自减再取值,后者是先取值再自减。那么条件中m自减后为0,n取值0,后减为-1,因此条件不成立,m的值为-1给A,然后,再自减为-2,程序第三行中B为-2,第四行C为0.但程序运行后结果为2 0 2.请帮助解释下,我的分析哪里错了。谢谢
首先说明一点 --m=n++ ?能这样写吗 知道你是想用它作为条件,但=是赋值 这里应该写成--m==n++
其次你没有弄清楚自增自减的运算法则
比如第二句 --m 此时 这个表达式的值是0 m值也是0 而 n++ 此时表达式值为0 n值自增后成了1 。
所以这里--m==n++ 是成立的 成立输出的是冒号前面的内容 而不是后面的。你刚说不成立输出前面的是错误的。
所以这里输出++n 前面n已经是1了 这里这个表达式的值是先运算 n再自增,表达式值和n值都为2 ,所以A=2
前面的弄清楚了 后面的就一样分析了
- 虽然懂了。但是平时要注意哎
- 平时要注意的
- 虽然错了,但是还是非常感激
- 虽然很晚了,但是却很激动
- 平时要注意收集发票
- 今天虽然起的很晚,但是做家务了
- GridView平时要注意的地方。
- 自己平时要注意的几个概念
- GridView平时要注意的地方。
- 虽然还是小白,但是我也要慢慢学习
- 搞笑的错误,持续了两年,虽然ie很烂,但是我冤枉了它
- 第二天:poj1002(虽然完成了题目但是时间太久了。。。加油坚持下去)
- 当退出游戏的时候 游戏虽然退出了 但是进程不会结束掉 所以在退出的时候要加上这句话
- [Web]大二学生必读 - 虽然我大三了,但是觉得还是很不错。。。
- Planar Occlusion 平面遮挡(虽然方法老了但是还有保留的意义)
- 不得不承认 这个比我总结的好多了 虽然是理论但是确实好
- 虽然AWS入华了,但是还有你不知道的事
- 输出九就表(虽然输出了结果,但是没有九九表的正确格式)
- Java小体会
- 我真不知道。。
- 初学PHP的基本脉络(仅供初学PHP的同学参考)(二)
- 程序
- s k 指针指向的是同一个内存地址。。。。。嗯嗯~~
- 虽然懂了。但是平时要注意哎
- 2010德勤中国50家最快公司(计算机/互联网)之腾讯
- 中国人自己打造的计算机语言——易语言(图)
- 毕业设计
- 对const 指针的认识!
- 地点
- 给盲目兴奋的程序员们的建议
- 最长公共子序列长度
- 请勿忘本!