| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2012 人关注过本帖
标题:菜鸟发问:为什么x=(i=4,j=16,k=32)的结果是32?
只看楼主 加入收藏
jasonfungsing
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-3-29
收藏
 问题点数:0 回复次数:11 
菜鸟发问:为什么x=(i=4,j=16,k=32)的结果是32?
如题,谢谢!
搜索更多相关主题的帖子: 结果 
2008-03-30 17:25
sandandfish
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-3-26
收藏
得分:0 
看,运算符的东西就明白了
2008-03-30 17:27
jasonfungsing
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-3-29
收藏
得分:0 
自己弄明白了,呵呵
2008-03-30 17:33
zjh19840213
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2008-3-17
收藏
得分:0 
你们自己懂了也要告诉我们小菜一下:
哪位解释一下?
2008-03-31 09:44
广陵绝唱
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:29
帖 子:3607
专家分:1709
注 册:2008-2-15
收藏
得分:0 
回复 4# 的帖子
逗号表达式,取最后的一个值。就如同说我要给你钱,我给你5元,你想,可能还能多给些,你没要;我又给了你10元,你还想能多些,又没要;我这回给你2元,然后说:就这最后一次了,你要就要,不要位倒。你一想,2元就2元吧,聊胜于无(好象不太确切,反正就是这么个意思)。

    所以,逗号表达式取最后一个值。
2008-03-31 10:08
zjh19840213
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2008-3-17
收藏
得分:0 
这下才真正懂了,原来逗号表达式在做怪,只怪自己还没完全看懂C语的书(自学)
谢谢楼主讲得通俗易懂
不过还得麻烦一下:
直接赋值32不是更简单吗?还要转个弯,如果一定要这样,哪什么情况下才用?

[[it] 本帖最后由 zjh19840213 于 2008-3-31 10:29 编辑 [/it]]
2008-03-31 10:26
夜火
Rank: 1
等 级:新手上路
帖 子:149
专家分:0
注 册:2007-5-30
收藏
得分:0 
说实在的 我很BS这样的 帖子

你学编程是 为了什么   为了 考试么 ?
恩可以算个理由 也许只有在中国这片土地才会出现这种状况吧

x=(i=4,j=16,k=32)

这个代码我不会算

而且我永远不会写这样的代码

在你编程的时候 你写出这样的代码 有什么用?
x=32;
直接这样写多好?

2008-03-31 12:16
广陵绝唱
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:29
帖 子:3607
专家分:1709
注 册:2008-2-15
收藏
得分:0 
程序代码:
/*
任何事物存在就必然有它的道理,不能说不合理的就是不需要的,应试教育是不对,可是如果不出这道题,就不会深刻理解逗号表达式的一些功能。

    下面我写了个小代码,看了之后,也许就会明白逗号表达式的一些功能,虽然它能被别的方式所代替,但不能说明这么写就不对。

    观点不同,请几位见谅。如有不对之处,还望大家指点,谢谢。
*/
#include<stdio.h>
int main(void)
{
        int a,b,c,d;
        a=(b=1,c=2,d=3);
        printf("a=%d,\nb=%d,\nc=%d,\nd=%d\n",a,b,c,d);
        getch();
}
2008-03-31 13:04
【坯ぁ芓】
Rank: 1
来 自:江西
等 级:新手上路
帖 子:5
专家分:0
注 册:2008-3-24
收藏
得分:0 
在C语言中规定了逗号表达式取最后一位的值作为总体的值,括号的级别最高所以先运行(i=4,j=16,k=32)结果取最后一位k=32的值作为括号的值,再把32传给x,结果不就是32吗。
2008-03-31 13:49
【坯ぁ芓】
Rank: 1
来 自:江西
等 级:新手上路
帖 子:5
专家分:0
注 册:2008-3-24
收藏
得分:0 
在C语言中规定了逗号表达式取最后一位的值作为总体的值,括号的级别最高所以先运行(i=4,j=16,k=32)结果取最后一位k=32的值作为括号的值,再把32传给x,结果不就是32吗。
2008-03-31 13:50
快速回复:菜鸟发问:为什么x=(i=4,j=16,k=32)的结果是32?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018451 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved