已知:X=Y=Z=0且均为int型变量,执行语句:++X||++Y&&++Z;求变量X与Y的值。这道题搞不明白。求高手解答一下。
解决方案 »
- 懂win8 metro的进
- C#自动解压压缩包
- webbrowser 中获取超链接的路径,乱码问题
- 硬件检测到一个组帧错误
- COOKIE的Expires不能保存是什么问题?
- C#初学者遇到的一个小问题
- System.Web.HttpContext.Current.User.Identity进行用户安全信息认证的问题
- c#关闭visual studio 2005 进程代码
- 关于DataAdapter和DataSet更新的问题(WInForm)
- RC2和bete2有何区别???
- 菜鸟提问!大神帮帮!如何用caseswitch语句实现一个button的多个图片点击变换?
- 使用C#进行office开发中,如何隐藏Word工具菜单栏?
如果是C,我没记错的话,应该是这样
X=X+1(=1);
Y=Y+1(=1);
Z=Z+1(=1);
X||Y&&Z(=1);
所以X和Y都是1
所以结果为: X = 1, Y = 0, Z = 0&& 也有 相似的 规则
X=Y=Z=0;
计算过程 Z=0; Y=Z=0; X=Y=0;
:++X||++Y&&++Z 只计算而舍弃算式值
首先计算++X 因为先自加 所以X=1;然后判断 X=1 或后边的
因为不管后边是什么 算式都成立(:++X||++Y&&++Z )所以跳过 ++Y&&++Z
关于这一点 一些编译器有开关 可以控制后面是不是继续计算 或者控制算式从右往左运算
结果是 X=1 Y=0 Z=0