当前位置: 代码迷 >> C语言 >> 请教!逗号表达式!急!谢谢高手了
  详细解决方案

请教!逗号表达式!急!谢谢高手了

热度:175   发布时间:2005-07-19 20:43:00.0
请教!逗号表达式!急!谢谢高手了
int a=0,b=0,c=0; c=(a--=--5),(a=b,b+3); printf("%d",c); 答案是5? 为什么不是3?
搜索更多相关的解决方案: 逗号  表达  

----------------解决方案--------------------------------------------------------
是不是抄错了
----------------解决方案--------------------------------------------------------

我在VC下编译出现错误提示,不知道你用哪个编译器呢? 错误提示如下: Compiling... Cpp1.cpp E:\vcsyh\myfirst\Cpp1.cpp(5) : error C2105: '--' needs l-value E:\vcsyh\myfirst\Cpp1.cpp(5) : error C2106: '=' : left operand must be l-value Error executing cl.exe.

Cpp1.obj - 2 error(s), 0 warning(s)


----------------解决方案--------------------------------------------------------
如果是这样写!结果3

#include<stdio.h> void main() { int a=0,b=0,c=0,d=5; c=(a=(--d)--,(a=b,b+3)); printf("%d",c);

}


----------------解决方案--------------------------------------------------------
或!

#include<stdio.h> void main() { int a=0,b=0,c=0,d=5; c=(--a=--d,(a=b,b+3)); printf("%d",c);

}


----------------解决方案--------------------------------------------------------
无聊,认为有研究的把运行步骤说清楚了!
----------------解决方案--------------------------------------------------------
c=(a--=--5)
c=(a==5)
c=5
最后就应该是5吧
----------------解决方案--------------------------------------------------------
回复:(parasite)请教!逗号表达式!急!谢谢高手了...

结果应该是5;
你的写法不太正确啊


----------------解决方案--------------------------------------------------------
int
("%d",

什么意思啊? ...
----------------解决方案--------------------------------------------------------
--5 ?
--不是自减运算吗
不是用在变量的吗
怎么用在常量了

----------------解决方案--------------------------------------------------------
  相关解决方案