| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1644 人关注过本帖
标题:曾怡讲的谭浩强教程中的一个错误?
取消只看楼主 加入收藏
hahahan
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2007-4-10
收藏
 问题点数:0 回复次数:2 
曾怡讲的谭浩强教程中的一个错误?


#include "stdio.h"
#include "conio.h"

void main()
{ int a=1;
printf("%d\n",a=3*a,3*a);
getch();
}
输出结果为
3

但是曾怡说这个3是3*a的值。

我试着改了一下:
#include "stdio.h"
#include "conio.h"

void main()
{ int a=1;
printf("%d\n",a=3*a,4*a);
getch();
}

按照曾怡的说法,结果应为4。但是实际结果还是 3



????是讲错了么?还是结果与编译器有关。

搜索更多相关主题的帖子: 谭浩强 曾怡 教程 
2007-04-13 10:24
hahahan
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2007-4-10
收藏
得分:0 

[此贴子已经被作者于2007-4-13 11:06:41编辑过]


没事儿你就多到这儿转转
2007-04-13 11:05
hahahan
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2007-4-10
收藏
得分:0 
回复:(tvkl)我看帖后的总结,供参考:例:#include...

补充一下,个人理解:

在计算的时候是从右往左,在输出的时候是从左往右。

#include "stdio.h"
#include "conio.h"

void main()
{ int a=1;
printf("%d\n",3*a,a=3*a);
getch();
}
结果是 9,

说明计算时是先算a=3*a ,再算3*a。 所以结果本应为 9 3 。 但是输出从左往右,此处只有一个%d ,所以只输出了 左边的 9

不知这样理解对不?


没事儿你就多到这儿转转
2007-04-14 10:39
快速回复:曾怡讲的谭浩强教程中的一个错误?
数据加载中...
 
   



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

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