| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1644 人关注过本帖
标题:曾怡讲的谭浩强教程中的一个错误?
只看楼主 加入收藏
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
以下是引用PcrazyC在2007-4-13 11:02:29的发言:
nuciewth,一般编译器调用函数的时候是从右向左调用的

说的是一般编译器是这样.
#include "stdio.h"
#include "conio.h"

int main()
{
int a=1;
printf("%d\n",(a=3*a,3*a));
//getch();
return 0;
}
是我理解错了,不能把输出列表看成一个整体的表达式.不过还是得小心上面的这个例子.


倚天照海花无数,流水高山心自知。
2007-04-13 11:17
PcrazyC
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:5652
专家分:0
注 册:2006-10-20
收藏
得分:0 
又是参数列表中的参数分隔符和逗号运算符的问题

雁无留踪之意,水无取影之心
2007-04-13 11:19
yangafn222
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2007-4-11
收藏
得分:0 
y一楼的说法有错误 他是“,”号表达试应自输出最后一个的结国 应是 "a*3"
2007-04-13 13:30
吕玄远
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2007-4-6
收藏
得分:0 
printf("%d\n",a=3*a,3*a);中的(a=3*a,3*a)属于逗号表达式吗 ?
2007-04-13 16:12
spider1987
Rank: 1
等 级:新手上路
帖 子:172
专家分:0
注 册:2007-2-18
收藏
得分:0 
以下是引用吕玄远在2007-4-13 16:12:52的发言:
printf("%d\n",a=3*a,3*a);中的(a=3*a,3*a)属于逗号表达式吗 ?

应该不属于吧?

2007-04-13 16:18
PcrazyC
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:5652
专家分:0
注 册:2006-10-20
收藏
得分:0 
如果是这样printf("%d\n",(a=3*a,3*a));的话,括号里面的“,“就是逗号运算符,如果是printf("%d\n",a=3*a,3*a);的话,这里的“,”就是参数分隔符

雁无留踪之意,水无取影之心
2007-04-13 16:20
冰天雪
Rank: 1
等 级:新手上路
威 望:1
帖 子:331
专家分:0
注 册:2007-2-27
收藏
得分:0 
谭版的也似较简单啊,好多的C东西都没有提到,比如图形、颜色等
2007-04-13 16:22
游乐园
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:671
专家分:0
注 册:2006-11-1
收藏
得分:0 
这里逗号不能按逗号表达式来看 PcrazyC解释的对
int a=1;
a=3*a,4*a,5*a; //这样的才可以,即单独先运算

而这里的是printf()里的输出格式 应该是一一对应的 %d对应 a=3*a 后面的3*a不参加,因为没有格式与其对应

unicorn-h.spaces. ◇◆ sava-scratch.spaces.
2007-04-13 16:31
杨过
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2007-4-13
收藏
得分:0 
按 曾怡说这个3是3*a的值
他是把 printf("%d\n",a=3*a,3*a);中的(a=3*a,3*a)当逗号运算了

但这里不能把他当逗号运算,只输出第一个值

所以 曾怡 说法有误
2007-04-13 16:40
吕玄远
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2007-4-6
收藏
得分:0 
回复:(PcrazyC)如果是这样printf(
哦 ,原来如此!谢谢
2007-04-13 16:41
快速回复:曾怡讲的谭浩强教程中的一个错误?
数据加载中...
 
   



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

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