C语言中: a+=a-=a*a 这个错在哪里? 为什么?求详解。 期待高手回答~ 40
首先这个表达式在编译的时候是能够通过的(VC++2008),但是这个表达式其实是不正确的,但是到底错在什么地方我目前还不知道期待有高手能回答~...
首先 这个表达式在 编译的时候是能够通过 的(VC++2008),但是这个表达式其实是不正确的 ,但是到底错在什么地方 我目前还不知道 期待有高手能回答~
展开
8个回答
展开全部
a += a -= a*a;
这样写是没错的,注意到+和=之间不能有空格,否则就不能通过编译,同样,-和=之间也不能有空格,这是因为+=、-=、*=、/=等是一个整体。
这样写是没错的,注意到+和=之间不能有空格,否则就不能通过编译,同样,-和=之间也不能有空格,这是因为+=、-=、*=、/=等是一个整体。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这样写没有错啊,我在哪里好像见到过这样的题。
a= 3
a+=a-=a*a;
问此时a的值。
其实以上等价于
int a,b;
a= 3;
b = a*a;
a = (a-b);
a = a+a;
所以a值为-12.
a= 3
a+=a-=a*a;
问此时a的值。
其实以上等价于
int a,b;
a= 3;
b = a*a;
a = (a-b);
a = a+a;
所以a值为-12.
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
看看是不是语法错误,应该是不是这句旁边有什么符号错误啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
表达式没问题,你理解的问题,从右往左看
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这好像是计算机二级的一道选择题吧,从右往左执行推出来就行,实际程序中不会这么用的
a+=(a-=(a*a))=2*(a-a*a)
a+=(a-=(a*a))=2*(a-a*a)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询