标题:被这题目弄晕了.~~
只看楼主
oclassic
Rank: 1
等 级:新手上路
帖 子:140
专家分:0
注 册:2007-4-18
 问题点数:0 回复次数:12 
被这题目弄晕了.~~
#include<stdio.h>
int main(void)
{
int k=2;
printf("%d,%d",k,k++);
}

请问结果为什么是 3,2 ????

要疯了啊.
搜索更多相关主题的帖子: void include 
2007-04-25 13:02
非凡DZ
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2007-4-6
得分:0 

我的结果是2,2


2007-04-25 13:06
PcrazyC
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:5652
专家分:0
注 册:2006-10-20
得分:0 
又是与编译器有关的东西,不想说了,不这样写就是了,最好杜绝一切与编译器有关的代码

雁无留踪之意,水无取影之心
2007-04-25 13:10
wood1314
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2007-4-21
得分:0 
呵呵 我告诉你哦
因为printf()这个函数的参数, 是从右往左展开的, 先算的k++ 当然是2了
后来++完了以后不就是3了吗?
所以结果是 3 2 .
2007-04-25 14:01
oclassic
Rank: 1
等 级:新手上路
帖 子:140
专家分:0
注 册:2007-4-18
得分:0 
函数都是从右向左吗???

编程群号码30772309群刚刚建立一个论坛http://tszbbs./?u=2 诚招斑猪哦
2007-04-25 14:43
zy1437zy
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2007-4-25
得分:0 
以下是引用wood1314在2007-4-25 14:01:08的发言:
呵呵 我告诉你哦
因为printf()这个函数的参数, 是从右往左展开的, 先算的k++ 当然是2了
后来++完了以后不就是3了吗?
所以结果是 3 2 .

呵呵,正解!~

2007-04-25 15:01
wood1314
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2007-4-21
得分:0 
以下是引用oclassic在2007-4-25 14:43:43的发言:
函数都是从右向左吗???

这要依据编译器了 , 那可不一定都这样.

2007-04-25 20:34
linuxbabya
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2007-4-19
得分:0 
一般的像C++ builder和Devc++,turbo c都是会输出3,2的。
试了试VC是输出2,2的。
2007-04-25 21:19
oclassic
Rank: 1
等 级:新手上路
帖 子:140
专家分:0
注 册:2007-4-18
得分:0 
郁闷,大不了不要这样用!

编程群号码30772309群刚刚建立一个论坛http://tszbbs./?u=2 诚招斑猪哦
2007-04-26 16:28
tomneusoft
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2007-4-22
得分:0 
我的结构也是2,2啊
你可以试一试不同的编译环境
就象楼上说的
2007-04-26 16:43



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-134820-1-1.html




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

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