| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 528 人关注过本帖
标题:一个怪问题
只看楼主 加入收藏
dzl64
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-2-2
收藏
 问题点数:0 回复次数:8 
一个怪问题

有一个简单程序:

int a=2;
int f(int n)
{static a=3;
a=a+n;
return a;
}
main()
{int y=1;
printf("%d%d%d",f(y),f(y),f(y));
}

应该输出456,可不知道为什么却是654,哪位能指教


搜索更多相关主题的帖子: return 
2006-02-02 01:06
Xxibug
Rank: 1
等 级:新手上路
威 望:1
帖 子:95
专家分:0
注 册:2006-1-31
收藏
得分:0 

编译器问题


=======【天上有人 地上有狼】=======
2006-02-02 01:27
welldone2006
Rank: 1
等 级:新手上路
帖 子:148
专家分:0
注 册:2006-1-8
收藏
得分:0 
printf("%d%d%d",f(y),f(y),f(y));运算顺序是从右至左。

2006-02-02 10:18
羊爱上了狼
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2006-1-30
收藏
得分:0 
#include<stdio.h>
int f(int n)
{static a=3;
a=a+n;
return a;
}
int g(int b)
{
static r=2;
r=r+b;
return r;
}
int l(int p)
{
static q=9;
q=q+p;
return q;
}
main()
{int y=1;
printf("%d,%d,%d",f(y),g(y),l(y));
}
如果是从右到左为什么这个输出的却是从左到右的呢??请3楼的解释一下!!
楼主的我执行也是从右到左啊,不知道为什么!1

掌握技术为国人的软件事业发展作出贡献!!!!这是我的愿望!!!
2006-02-02 11:01
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:0 
以下是引用welldone2006在2006-2-2 10:18:00的发言:
printf("%d%d%d",f(y),f(y),f(y));运算顺序是从右至左。

九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2006-02-02 11:25
dzl64
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-2-2
收藏
得分:0 
对3楼的朋友表示感谢,不过为什么会从右至左啊,对4楼的朋友的问题我倒可以回答,因为你的输出的名字不同
2006-02-02 23:01
Xxibug
Rank: 1
等 级:新手上路
威 望:1
帖 子:95
专家分:0
注 册:2006-1-31
收藏
得分:0 

你去试完所有c编译器就明白了,关于printf()这个运算方向有从右至左也有从左至右的
别去纠缠这类问题,避免这样写代码,对学习有好处


=======【天上有人 地上有狼】=======
2006-02-02 23:17
aiyuheng
Rank: 1
等 级:新手上路
威 望:1
帖 子:656
专家分:0
注 册:2006-1-12
收藏
得分:0 
同意楼上,在一些别人看起来费劲,编译器处理还不同的写法还是少写为妙,我觉得真正的有用的代码不是以一些难懂的表达式组成的.
在一些运算符上也要加上()为妙,这样就算写起来,哪个运算符级数也懒的去记了.

when i want to ask anyone,i will ask myself first.
2006-02-02 23:47
wukaijian
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2006-1-15
收藏
得分:0 
我也是这呢认为的,不要老是刻意的去研究一些有歧义或者是比较钻牛角尖 的问题.这对学习并没有什么好处!!!
2006-02-04 19:47
快速回复:一个怪问题
数据加载中...
 
   



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

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