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)
久久精品国产精品青草
|
segui久久国产精品
|
久久精品男人影院
|
国产精品免费久久久久电影网
|
91亚洲国产成人久久精品网址
|
久久久久亚洲av成人无码电影
|
久久婷婷国产剧情内射白浆
|
97久久香蕉国产线看观看
|
久久精品一区二区影院
|
亚洲国产另类久久久精品小说
|
久久亚洲国产午夜精品理论片
|
久久久精品久久久久影院
|
99久久婷婷国产综合亚洲
|
久久婷婷午色综合夜啪
|
久久精品国产99国产电影网
|
亚洲精品美女久久久久99
|
久久综合丁香激情久久
|
亚洲欧美伊人久久综合一区二区
|
国内精品伊人久久久久网站
|
色狠狠久久AV五月综合
|
一本色道久久综合狠狠躁篇
|
国产精品久久久天天影视香蕉
|
中文字幕精品久久久久人妻
|
久久福利青草精品资源站免费
|
久久久久av无码免费网
|
久久精品国产精品亚洲下载
|
久久综合狠狠综合久久综合88
|
性做久久久久久久久
|
久久久久久一区国产精品
|
伊人久久大香线焦综合四虎
|
精品国产91久久久久久久
|
99久久人妻无码精品系列
|
无码超乳爆乳中文字幕久久
|
午夜久久久久久禁播电影
|
人妻少妇久久中文字幕
|
亚洲国产另类久久久精品小说
|
亚洲国产欧洲综合997久久
|
热re99久久精品国99热
|
久久久久免费看成人影片
|
久久99国产精品尤物
|
一级做a爰片久久毛片人呢
|