2 wushyyo wushyyo 于 2013.06.12 11:39 提问

关于*in_iter++与*in_iter;in_iter++;的区别

第一段代码:
ostream_iterator out_iter(cout, "\n");
istream_iterator in_iter(cin), eof;
while(in_iter!=eof){
*out_iter++ = *in_iter++;
}
return 0;
第二段代码:
ostream_iterator out_iter(cout, "\n");
istream_iterator in_iter(cin), eof;
while(in_iter!=eof){
*out_iter = *in_iter;
out_iter++;
in_iter++;
}
return 0;
为什么这两段代码的执行结果不一样。
第一段代码执行结果:
输入
1 2 3
输出
1
2
然后就没有了,没有3,这是为什么。
第二段代码的执行结果才符合预期
输入
1 2 3
输出
1
2
3
有没有哪位大神指导一下,这是为什么?

1个回答

baij1230
baij1230   2017.04.22 20:17

应该跟自增有一定关系,++优先度较低

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!