Chinaunix

标题: print的结果是多少? [打印本页]

作者: liugang9931706    时间: 2011-02-16 10:45
标题: print的结果是多少?
int a=1;
printf("%d:%d;%d",a--,++a,++a);
作者: hellioncu    时间: 2011-02-16 10:54
跟实现有关的,结果不一定
作者: crazyshell    时间: 2011-02-16 10:55
++ --这种连续问题 取决于编译器 , 这里是 3,3,2  运算顺序 ++a,++a,a--
作者: liugang9931706    时间: 2011-02-16 11:17
我用gcc和.net2008测试,结果都是3;2;2。
我想问,这跟编译器有关?
这种操作的顺序是在C语言中定义好了吧!!
作者: liugang9931706    时间: 2011-02-16 11:18
我的理解是这样的:
        /*运算(从右到左):a=2;a=3;a=3*/
        /*打印(从左到右):a=3;a=2;a=2*/
作者: 雨过白鹭洲    时间: 2011-02-16 11:28
again...
作者: crazyshell    时间: 2011-02-16 11:30
LZ 这个++ --问题 知道怎么操作就好了 其它不久深究下去
作者: ecjtubaowp    时间: 2011-02-16 11:38
不可移植啊,这样的代码
作者: tempname2    时间: 2011-02-16 11:58
这个是不是月经帖?论坛没有FAQ么。。。。。。
作者: mcemil    时间: 2011-02-16 12:50
面试题直接走人
考试题直接斯卷子
书上的直接烧书
作者: jn789987    时间: 2011-02-16 12:55
++  -- 是区分操作系统而言的~~

不过都是+1 和 -1的操作而已~~
作者: rubylc_unix    时间: 2011-02-16 13:38
很多这样的问题了!
作者: wb112200    时间: 2011-02-16 17:03
面试题直接走人
考试题直接斯卷子
书上的直接烧书
mcemil 发表于 2011-02-16 12:50



    {:3_183:}  呵呵 牛人啊
作者: Magic_LP    时间: 2011-02-18 23:23
工作中不会有需求要写这样的代码吧




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2