作者:
decheng (bodhi)
2019-02-24 13:19:03平台:Linux 編譯器:gcc
想請問各位大大,小弟最近在某個driver .c檔看到以下寫法:
retval= readw(addr1) == readw(addr2);
後來把retval值printf也沒錯,相等就會是true,retval=1;
程式也沒問題,但是想說是不是要改寫成tenary的寫法會比較好:
如下:
retval= readw(addr1) == readw(addr2) ? 1 : 0 ;
總覺得程式原本的寫法看起來很怪,但又沒錯~
小弟只有基本C語言基礎,看到一些特殊技巧有時候不太知道怎麼辦
還請各位幫忙大大看一下,另外這類的技巧是不是要去看C99 spec會比較好
找到答案~ 感謝各位~
作者: decheng (bodhi) 2019-02-24 14:15:00
好的感謝,看來就是我想太多了~ 謝謝~!
作者:
uranusjr (â†é€™äººæ˜¯è¶…級笨蛋)
2019-02-24 14:22:00如果有 first-class boolean type 比較有差, 例如 Java但是 C 就沒有這種東西, 所以這樣寫很合理
作者: decheng (bodhi) 2019-02-24 14:30:00
感謝u大,了解了~
不知道哪裡特殊 大概跟next morning一樣特殊吧只有基本C語言基礎還學?:那叫學歪 以前整本螞蟻書上完也不會教到 太早學這個有害身心健康
作者:
hunandy14 (Charlott.HonG)
2019-02-27 14:10:00後面那兩個刮起來,看起來就順眼多惹~~
作者:
cia1099 (阿兜啊)
2019-02-27 14:21:00你把code改得更智障
作者: decheng (bodhi) 2019-02-27 23:37:00
感謝樓上大大指教,我太蠢了!qq