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
閱讀(2587)
評論(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)--指針(測試題)
搜索
積分與排名
積分 - 28947
排名 - 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.?構造函數和析構函數調用問題(3266)
2.?C++基礎學習筆記(5)---面向對象(測試題)(2720)
3.?關于自增自減的小問題(2587)
4.?實現四舍五入(2578)
5.?打開和關閉WIFI 的代碼出現了問題 android (2554)
評論排行榜
1.?關于自增自減的小問題(12)
2.?C++中const和C的#define區別(3)
3.?構造函數和析構函數調用問題(2)
4.?C++ 基礎學習筆記(2)---函數(測試題)(2)
5.?實現四舍五入(2)
久久久久久久久久久免费精品
|
色综合久久无码中文字幕
|
久久精品国产99国产电影网
|
狠狠色丁香久久婷婷综
|
国产国产成人久久精品
|
亚洲精品午夜国产va久久
|
日本强好片久久久久久AAA
|
大美女久久久久久j久久
|
久久亚洲国产精品123区
|
久久婷婷激情综合色综合俺也去
|
国产AV影片久久久久久
|
久久国产免费直播
|
久久国产视屏
|
久久亚洲AV成人出白浆无码国产
|
品成人欧美大片久久国产欧美...
|
99久久做夜夜爱天天做精品
|
国产午夜精品理论片久久影视
|
亚洲精品97久久中文字幕无码
|
精品九九久久国内精品
|
久久精品国产色蜜蜜麻豆
|
青青国产成人久久91网
|
久久久久久久久无码精品亚洲日韩
|
久久久受www免费人成
|
久久久国产精品福利免费
|
久久久精品日本一区二区三区
|
国产精品久久久久久久久软件
|
精品久久久久久亚洲精品
|
久久狠狠爱亚洲综合影院
|
亚洲国产高清精品线久久
|
国产69精品久久久久9999
|
美女写真久久影院
|
久久99精品国产麻豆宅宅
|
99精品久久久久中文字幕
|
99999久久久久久亚洲
|
久久99精品久久久久久久不卡
|
国产成人无码精品久久久性色
|
综合久久一区二区三区
|
一本综合久久国产二区
|
久久99久久99精品免视看动漫
|
久久久久久久久66精品片
|
久久久噜噜噜久久中文字幕色伊伊
|