看板 Soft_Job 關於我們 聯絡資訊
我也來提供一個.C語言,64bit struct A { int8 arg1; int8 reserve; int16 reserve2; int arg2; int32 arg3; int32 reserve3; } __attribute__((packed)); .... 為什麼你不相信gcc 的對齊功能呢.. 當然,如果這個A 物件的資料會在不同的CPU或硬體平台傳輸,程式可能會這樣寫,可是 既然都要在各種不同CPU 或硬體環境上傳輸,我寧願不要做對齊,浪費一堆網路封包傳送 reserve幹麻呢 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.250.6.195 ※ 文章網址: http://www.ptt.cc/bbs/Soft_Job/M.1411384103.A.0FC.html
robler: 可以停了嗎 09/22 19:36
PoorLoser: 可能是存在 NVRAM 的連續資料 09/22 20:10
u9654802: 有寫過BIOS你就知道為啥要這樣寫了 09/22 23:02
realmeat: 你真的那麼相信這段程式碼一定用gcc編 09/23 14:06
leolarrel: 因為我要維護這段code ,所以我確定他要在gcc編譯 09/23 18:26
leolarrel: 特殊領域可能會需要特殊C語言寫法,不過,我維護的只是 09/23 18:28
leolarrel: 一般的C語言應用程式,超級純的userspace program 09/23 18:29
kit51: 小弟不才,請問這不會被compiler最佳化嗎 09/24 23:52
chwan: userspace program 就不用考慮? 不用講大話吧 09/25 18:51