Board logo

标题: 很经典的题目(C++)。 [打印本页]

作者: 笛青    时间: 2003-6-5 10:00     标题: 很经典的题目(C++)。

切记! 不要运行程序看结果,请目测迅速报出答案,祈祷吧... 程序1: #include int a=24; void fun(int=++a) { cout< int a=24; void fun(int=++a) { cout< 作者: cndijkstra    时间: 2003-6-5 10:33     标题: 很经典的题目(C++)。

24
26
2626
对否
作者: lore5123    时间: 2003-6-6 21:04     标题: 很经典的题目(C++)。

看不懂“=++a”是怎么回事?
作者: 笛青    时间: 2003-6-6 22:11     标题: 很经典的题目(C++)。

自加1.
作者: 笛青    时间: 2003-6-12 21:53     标题: 很经典的题目(C++)。

厉害。佩服!
我是运行程序后才想到的。
我的理解是这样的:
1。void fun(int=++a)是void fun(int b=++a)的省略,其中(++a)是默认参数。fun(3)由于传递了参数3所以默认参数就被忽略掉了,也就是说(++a)不会执行,但是下面的a++会执行,所以fun(3)的结果显示24,显示完之后a的值变为25了。fun()没有传递参数,所以(++a)被调用,a变为26,所以下面cout语句也就输出26了,这时a值为27。
2。默认参数被调用,所以a==25。然后cout从右往左逐个扫描,编译器先执行最右边的参数,然后从右往左执行,所以cout的结果就是26,26啦。

作者: lx    时间: 2003-7-2 12:45     标题: 很经典的题目(C++)。

楼上的,我是刚学C++的我看不懂你说的话呀,B是从哪来的呀,默认参数应该是24呀,如果被忽略了为什么不执行了我不懂呀,望指教
QQ:24901029
E-MAIL:fengyun3169_cn@163.com

作者: hanqiou    时间: 2003-8-29 16:07     标题: 很经典的题目(C++)。

下面引用由笛青2003/06/12 09:53pm 发表的内容:
厉害。佩服!
我是运行程序后才想到的。
^^^^^^
请问具体运行程序应该用什么东西 ?
是不是 VC?

作者: 杲杲    时间: 2003-11-4 18:45     标题: 很经典的题目(C++)。

好,经典.我开始忘记输出是自右向左的了.
作者: dbh8319    时间: 2003-11-26 16:18     标题: 很经典的题目(C++)。

好东西
希望以后多发这样的程序
作者: bigblock    时间: 2003-11-26 17:52     标题: 很经典的题目(C++)。

c语言的运行环境是turbo c
作者: weiyiena    时间: 2003-11-29 12:59     标题: 很经典的题目(C++)。

这样的好文章以后要贴一点啊,。文章好好呀。
作者: bettydanns    时间: 2003-12-4 05:45     标题: 很经典的题目(C++)。

对不起楼主了,我看不出来
我用C++编绎了,答案是二楼的
五楼的解释不太懂
请楼主解释一下
作者: Eben    时间: 2003-12-23 18:48     标题: 很经典的题目(C++)。

这种程序好像实用的意义不大

作者: hanqiou    时间: 2004-1-21 14:30     标题: 很经典的题目(C++)。

原来COUT输出还是从右到左的
看书的时候我自己就没有看到诶!
谢谢楼主!谢谢5楼的兄弟!
作者: tonghua    时间: 2004-4-23 22:53     标题: 很经典的题目(C++)。

--------------------Configuration: add - Win32 Debug-------------------- Compiling... add.cpp D:\c++区\add.cpp(5) : error C2065: 'cout' : undeclared identifier D:\c++区\add.cpp(5) : error C2065: 'endl' : undeclared identifier D:\c++区\add.cpp(5) : warning C4552: '<<' : operator has no effect; expected operator with side-effect Error executing cl.exe. add.exe - 2 error(s), 1 warning(s) 楼主:#include 改为#include




欢迎光临 黑色海岸线论坛 (http://bbs.thysea.com/) Powered by Discuz! 7.2