[問題] 13誡之八的疑惑
小弟對於13誡之八有點疑惑, 主要在第二個敘述, 以下引述第八誡:
===========
你不可以在一個運算式(expression)中,對一個基本型態的變數修改其值
超過一次以上。否則,將導致未定義的行為(undefined behavior)
你也不可以在一個運算式(expression)中,對一個基本型態的變數修改其值,
而且還在同一個式子的其他地方為了其他目的而存取該變數的值。(其他目的
是指不是為了計算這個變數的新值的目的)。否則,將導致未定義的行為。
===========
第二個敘述中: "其他目的,是指不是為了計算這個變數的新值的目的"
我的疑惑在於, 此敘述似乎暗指 若是為了計算此變數新值的話 仍然可以讀取該變數的值
但是似乎又不合理 因為想不出任何是為了計算變數新值修改到此變數又去讀取的例子
再者, 也會違反八誡的第一個敘述阿??
x = x++ * x ; <====這樣算是一個case嗎? ------ (A)
也就是說 一般的用法 一個運算式(如同上面的整個式子A)不就是要計算新值的嗎?
那不允許在此目的之外修改某變數再去讀取此變數 不就同等於可以這麼做 @_@?
搞不清楚阿..............
請各位大大幫忙解惑一下 似乎我有哪邊對於第二個敘述理解錯誤了.....
謝謝~~~
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.226.225.76
※ 文章網址: http://www.ptt.cc/bbs/C_and_CPP/M.1401806034.A.9D8.html
推
06/03 23:55, , 1F
06/03 23:55, 1F
推
06/04 00:18, , 2F
06/04 00:18, 2F
→
06/04 00:19, , 3F
06/04 00:19, 3F
→
06/04 00:20, , 4F
06/04 00:20, 4F
推
06/04 01:31, , 5F
06/04 01:31, 5F
→
06/04 01:31, , 6F
06/04 01:31, 6F
討論串 (同標題文章)