推 LPH66:compiler 應該會在 ptr = (int *)&score; 那行給 warning... 01/13 20:10
推 ericinttu:這樣用pointer, 是個白目者吧... 01/13 20:11
推 kiedveian:你把const int * 轉型成 int * 所以可以改 01/13 20:23
推 awashharp:這小黃不是有教嗎XD? 01/13 20:38
推 nowar100:我沒記錯的話這應該是未定義行為吧 01/13 20:50
→ tropical72:vc上跑是連警告都沒有,結果一樣,在其它地方有相關討論 01/13 21:12
→ tropical72:被改成59.. 01/13 21:13
→ tropical72:說錯,score 是真的被改成 100 01/13 21:15
→ ericinttu:這有在十三誡裡面嗎? 01/13 22:33
推 HudsonE:因為被你強轉了 (int*) 那行 01/13 22:36
推 winest:猜測是const只是在compiler時檢查,因為data段還是rw 01/13 22:41
推 tomap41017:推樓樓上...建議用C++ style cast就知道了 01/14 01:25
推 hylkevin:應該是compiler幫你最佳化成常數了吧 試試-O0 01/14 01:28
推 loveme00835:未定義行為, 參考 5.2.11.7, 發生什麼事是不可預測的 01/14 01:31
→ kkroy:OK了解! 感謝大家! 原來是未定義.... 01/14 09:30
→ kkroy:To awashharp: 實在慚愧~小黃的功力我吸收不到一半QQ 01/14 09:31
→ pi3141:好眼熟的程式碼XDD talk板有相同的結論了^_^ 01/14 15:04
推 jmren:小黃是?可以給個提示XD? 01/18 12:08