PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
C_and_CPP
[問題] 關於c的運算子優先權問題
作者:
ac01965159
(leeleo)
2020-06-08 00:10:37
https://i.imgur.com/63HAVsW.jpg
這是我在網路上找到的優先權表,因為++的優先權比=還高
所以如果假設一個變數a=0,那讓b=a++
結果卻是b為0,可是如果看優先權的話不是應該要a先+1的嗎?
先謝謝各位。
作者:
tomsawyer
(安安)
2020-06-08 00:31:00
參考置頂13戒的第8戒
作者:
ac01965159
(leeleo)
2020-06-08 00:41:00
剛剛有看過第八戒了,雖然可能是我理解錯,不過他那篇好像是在說一個expression中對同一個變數做++的問題看過了之後還是不知道為什麼qq
作者:
Dracarys
(MayShowGunMore)
2020-06-08 00:44:00
postfix increment他的確是先「加一」了你把他可以想成一個function 先複製a到一個local variable再執行prefix increment (++a) 再return那個local variable
作者:
ac01965159
(leeleo)
2020-06-08 02:01:00
感謝,不過不太了解為什麼b=++a就不會有這種先複製到local variable的情形呢?
作者:
Dracarys
(MayShowGunMore)
2020-06-08 07:27:00
因為規定?可能要觀落櫻問Dennis Ritchie
作者:
sarafciel
(Cattuz)
2020-06-08 09:43:00
因為他本來的定義就是那樣優先權、回傳值跟運算元的最終值是三件事
作者: SaberZ7 (Sean)
2020-06-08 10:26:00
為什麼要這樣寫我覺得比較重要。
作者:
Jekk
(Lestrade)
2020-06-11 01:15:00
a++ --> 整個式子運算完以後 a=a+1++a --> 先a=a+1以後再運算整個式子
繼續閱讀
[問題] range min query 建表太大 如何解?
momo988
[問題] 新手Overloading operator ==問題請益
john2223k
[問題] multi-thread計時的問題
icetofux
[問題] Linked List的delete用法
Ruination
[問題] 想要有全域變數效果但是能控制lifetime
ofd168
[問題] 新增object時候,自動新增執行
ofd168
[問題] C++ SLT map<struct*,int> 的行為??
s89162504
[問題] IEEE 754 浮點數運算以及rounding請益
ayn775437403
[問題] 做到讀取和繪製shapefile或tiff檔的視窗
e25820
[閒聊] CompilerDev編譯器開發 新版連署
mshockwave
Links
booklink
Contact Us: admin [ a t ] ucptt.com