這是乙個叫人眼前一亮的題目, 在讓人熟悉自增操作前置和後置兩種形式時,也可以了解下c++ 的命名來歷。
自增(++)操作符有前置和後置兩種形式,其區別如下:
++i , 返回的是左值, 是i 加1 後 i 這個物件本身
i++ , 返回的是右值, i 這個物件會加1 ,但返回的是i 未修改前的數值。
兩種不同的返回值是由於其本質操作不同導致:
++i, 將i 增加1 後返回i;
i++ , 開闢臨時變數儲存i 當前值 const j =i, i增加1 ,返回 i未修改的值 const j.
所以一般來說,除非必須使用後置形式的情況, 我們都使用前置形式, 其效率更高,效能更好
最後,理解下為什麼叫c++ 而不是++c?
首先要使用c,++ 是確定的,表示新的語言是c語言的超集,是從c語言演化而來的。
c++表示對c語言進行擴充套件之後,還可以使用c語言的內容,而寫成++c則表示無法再使用c的原始值了,也就是說c++不能向下相容c了,這與實際情況不符。
為什麼C 不叫 C?
今天看了c primer,介紹前自增操作符和後自增操作的差別。順便了解了為什麼c 不叫 c?c 的c說明了它本質上是從c語言演化過來的,c 語言是c語言的超集,是在c語言基礎上進行的擴充套件 引入了new delete等c語言中沒有的操作符,增加了物件導向程式設計的支援,等等 是先有c語言,在進行c...
C 為什麼不叫 C
c primer 確實給我帶來了很多驚喜。作為一本專業的具有較高門檻的 入門書 它有很多地方實在是國內的書不可及的,這不僅在於內容上的嚴謹,更表現在優秀的習題所帶給學習者的啟迪。習題5.16 你認為為什麼c 不叫做 c?看到這個習題,頓感眼前一亮 不禁想起某些國內書籍的題目,真是平淡如水 這對於理解...
為什麼叫C 而不叫 C
在討論這個問題之前,我們先討論一下自增和自減操作符。其它的話就不說了,先給個例子 int i 0 j j i j 1 i 1 j i j 1 i 2 雖然都使運算元加1,但是區別在於 i返回的是加1後的值,即返回的是物件本身。即將自己先加1再返回,返回的是物件 變數 本身,即是左值。而後置操作先返回...