ANDROID家園
DoubleW學習樂園
C++博客
首頁
新隨筆
聯系
聚合
管理
posts - 12, comments - 21, trackbacks - 0
關于自增自減的小問題
int
a
=
21
,b
=
11
;
cout
<<
(
--
a
+
b)
<<
"
,
"
<<
(
--
b
+
a);
為什么運行結果是"30,31"啊???
急急急。。。。。。。。
posted on 2011-06-09 12:40
DoubleW
閱讀(2591)
評論(12)
編輯
收藏
引用
FeedBack:
#
re: 關于自增自減的小問題
2011-06-09 13:52 |
K.V
事實上我用vs2008,輸出是30,30
不過據說<<的計算順序是未定義的,可能是從左向右,可能從右向左,看編譯器的實現
不過30,30這個結果,我百思不得其解。
回復
更多評論
#
re: 關于自增自減的小問題
2011-06-09 13:56 |
陳梓瀚(vczh)
@K.V
不僅<<沒定義(事實上vs2010debug+從左到右release+從右到左),而且兩個--和兩個<<之間的順序也沒有準確定義……
所以一般來說我們認為,如果一個語句里出現了i++,那么這個語句里面唯一能出現i的地方就在這里。文章里面的例子違反了這個不成文的守則。
回復
更多評論
#
re: 關于自增自減的小問題
2011-06-09 13:57 |
lugesot
http://apps.hi.baidu.com/share/detail/33574874
參考下這個,明白運行順序,左值和右值,你也應該明白了。
我的運行結果也是30,30.
個人覺得深究沒有太大意義。
回復
更多評論
#
re: 關于自增自減的小問題
2011-06-09 14:00 |
K.V
@陳梓瀚(vczh)
恩。正常的程序是不應該存在這樣的編碼習慣的。不研究了。
回復
更多評論
#
re: 關于自增自減的小問題
2011-06-09 16:24 |
DoubleW
我也不想去研究啊 ,考試的時候就是有這樣的題目,讓人死啊...
回復
更多評論
#
re: 關于自增自減的小問題
2011-06-09 17:02 |
邱震鈺(zblc)
在gcc下,是30,31
在vs08下,是30,30
其實還有更多詭異的事情....
在vs08下 如果隨便寫一個
int fuck(int t)
{
cout<<t<<endl;
return t;
}
int main()
{
int t=4,k;
(double)fuck(++t)/fuck(++t);
k=(double)fuck(++t)/fuck(++t);
}
有沒有加'k=' 會影響到編譯器是否同步傳入的實參.............
換句話說,如果fuck的返回值不會被用到,則t不同步,否則,同步.......
gcc就沒這個問題。
考試之前,你熟悉下你們題庫是基于哪一個編譯器的哪個版本,然后摸清了它的脾氣,針對性的來用規律,就ok.
回復
更多評論
#
re: 關于自增自減的小問題
2011-06-09 19:23 |
airtrack
標準沒有規定先對哪個求值,完全由編譯器決定,而對于這種標準未定義的東西,沒必要去浪費時間,你只需知道求值順序不確定就行,在實際編碼中就不應該出現這樣的代碼。
PS:其實你可以BS下出這種題目的人。
回復
更多評論
#
re: 關于自增自減的小問題
2011-06-09 19:42 |
DQW
嗯,也曾經頭痛這個問題
回復
更多評論
#
re: 關于自增自減的小問題
2011-06-09 20:23 |
DoubleW
@邱震鈺(zblc)
我們用的VC++ 6.0;
算了,不去糾結了,背答案....謝謝!
回復
更多評論
#
re: 關于自增自減的小問題
2011-06-10 10:46 |
Bill Hsu
LZ是 wangwang對吧 :-)
回復
更多評論
#
re: 關于自增自減的小問題
2011-06-10 17:12 |
DoubleW
@Bill Hsu
不愧是強哥阿!!!
回復
更多評論
#
re: 關于自增自減的小問題
2011-06-11 08:10 |
jc_ontheroad
這么簡短的兩行語句,也是機關重重。
回復
更多評論
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
【推薦】100%開源!大型工業跨平臺軟件C++源碼提供,建模,組態!
網站導航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Copyright ©2025 DoubleW Powered By:
博客園
模板提供:
滬江博客
<
2011年6月
>
日
一
二
三
四
五
六
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
9
常用鏈接
我的隨筆
我的評論
我參與的隨筆
留言簿
(3)
給我留言
查看公開留言
查看私人留言
隨筆檔案
(12)
2011年10月 (1)
2011年6月 (6)
2011年5月 (5)
文章檔案
(2)
2011年5月 (2)
最新隨筆
1.?Android平臺常見屬性集合
2.?打開和關閉WIFI 的代碼出現了問題 android
3.?關于自增自減的小問題
4.?實現四舍五入
5.?3D游戲開發學習書(轉自billhsu)---留著有時間看看
6.?C++中const和C的#define區別
7.?構造函數和析構函數調用問題
8.?C++基礎學習筆記(5)---面向對象(測試題)
9.?C++ 基礎學習筆記(4)---循環控制結構(測試題)
10.?C++基礎學習筆記(3)--指針(測試題)
搜索
積分與排名
積分 - 28989
排名 - 662
最新隨筆
1.?Android平臺常見屬性集合
2.?打開和關閉WIFI 的代碼出現了問題 android
3.?關于自增自減的小問題
4.?實現四舍五入
5.?3D游戲開發學習書(轉自billhsu)---留著有時間看看
6.?C++中const和C的#define區別
7.?構造函數和析構函數調用問題
8.?C++基礎學習筆記(5)---面向對象(測試題)
9.?C++ 基礎學習筆記(4)---循環控制結構(測試題)
10.?C++基礎學習筆記(3)--指針(測試題)
最新評論
1.?re: 關于自增自減的小問題
這么簡短的兩行語句,也是機關重重。
--jc_ontheroad
2.?re: 關于自增自減的小問題
@Bill Hsu
不愧是強哥阿!!!
--DoubleW
3.?re: 關于自增自減的小問題
LZ是 wangwang對吧 :-)
--Bill Hsu
4.?re: 關于自增自減的小問題
@邱震鈺(zblc)
我們用的VC++ 6.0;
算了,不去糾結了,背答案....謝謝!
--DoubleW
5.?re: 關于自增自減的小問題
嗯,也曾經頭痛這個問題
--DQW
閱讀排行榜
1.?構造函數和析構函數調用問題(3270)
2.?C++基礎學習筆記(5)---面向對象(測試題)(2724)
3.?關于自增自減的小問題(2591)
4.?實現四舍五入(2583)
5.?打開和關閉WIFI 的代碼出現了問題 android (2556)
評論排行榜
1.?關于自增自減的小問題(12)
2.?C++中const和C的#define區別(3)
3.?構造函數和析構函數調用問題(2)
4.?C++ 基礎學習筆記(2)---函數(測試題)(2)
5.?實現四舍五入(2)
天天做夜夜做久久做狠狠
|
欧洲精品久久久av无码电影
|
国产午夜电影久久
|
青青草原综合久久大伊人导航
|
久久精品无码一区二区三区日韩
|
亚洲综合久久综合激情久久
|
亚洲人成精品久久久久
|
无码超乳爆乳中文字幕久久
|
久久夜色精品国产噜噜麻豆
|
久久精品中文闷骚内射
|
久久av免费天堂小草播放
|
亚洲欧洲久久久精品
|
国内精品九九久久久精品
|
99久久亚洲综合精品网站
|
精品国产青草久久久久福利
|
久久er国产精品免费观看2
|
手机看片久久高清国产日韩
|
久久99精品久久只有精品
|
亚洲国产成人久久精品99
|
久久久久久狠狠丁香
|
无码伊人66久久大杳蕉网站谷歌
|
四虎国产精品成人免费久久
|
欧美激情一区二区久久久
|
91视频国产91久久久
|
国产精品成人99久久久久
|
色综合久久88色综合天天
|
欧美日韩久久中文字幕
|
精品无码人妻久久久久久
|
无码人妻精品一区二区三区久久
|
久久久久久国产精品美女
|
久久久噜噜噜久久
|
国产综合精品久久亚洲
|
97久久精品人人澡人人爽
|
国产成人久久精品一区二区三区
|
久久久亚洲AV波多野结衣
|
久久亚洲熟女cc98cm
|
久久精品国产2020
|
波多野结衣久久精品
|
伊人久久大香线蕉综合影院首页
|
伊人久久大香线蕉AV一区二区
|
日产久久强奸免费的看
|