论坛: 编程破解 标题: 各位帮个忙看看着个c程序 复制本贴地址    
作者: nade [nade]    论坛用户   登录
main()
{
int x=5,b=5,z;
z=++x>b?x:(b-->++x?++b:x);
printf("%d %d %d",x,b,z);}

地主 发表时间: 04-02-29 16:13

回复: nade [nade]   论坛用户   登录
我想问这个结果是怎么的出的呀/ 谢谢了

B1层 发表时间: 04-02-29 16:16

回复: xiaoshi [xiaoshi]   论坛用户   登录
我的理解
  7 4 7

B2层 发表时间: 04-02-29 20:24

回复: lwei889 [lwei889]   论坛用户   登录
结果是 6,5,6
建议你还是看看书。这是最基本的,但也是最容易出错的。
++x,是先让x的值加一 在使用的x的值,而x++则相反
z=++x>b?x:(b-->++x?++b:x);
这是个问号运算符,相当于
if(++x>b)
z=x;
else
  {
    if(b-->++x)
      z=++b;
    else
      z=x;
  }
我给做了个替换,这下你该明白了!

B3层 发表时间: 04-02-29 20:29

回复: nade [nade]   论坛用户   登录
谢谢这位大哥了

B4层 发表时间: 04-03-02 19:03

回复: yangcheng [yangcheng]   论坛用户   登录
哦!是这样哦!
我明白了!



B5层 发表时间: 04-03-03 09:41

回复: lingxiang [lingxiang]   论坛用户   登录
哪本书上有具体的介绍呢?

B6层 发表时间: 04-03-05 07:19

论坛: 编程破解

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号