[問題] 關於pushfront

看板EE_DSnP作者 (xxseanxx)時間12年前 (2012/11/18 21:04), 編輯推噓4(408)
留言12則, 4人參與, 最新討論串1/1
這個問題我看了很多學長發的文,仍然不太懂,所以希望版上大大給一點提示 就是到底怎麼樣才能使用丟進來的object的前4/8bytes來存東西呢? 又要如何取出一個object中存的下一個物件的指標呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 36.224.105.101

11/18 21:14, , 1F
強制把指標轉型
11/18 21:14, 1F

11/18 21:21, , 2F
所以是說*p=(*T)_FIRST嗎??但為甚麼這樣就會把東西存在
11/18 21:21, 2F

11/18 21:22, , 3F
前4/8BYTES呢??
11/18 21:22, 3F

11/18 21:24, , 4F
因為強制轉型不會改值 他只是改變dereference時的存取範圍
11/18 21:24, 4F

11/18 21:32, , 5F
上課有建議過,可以轉型成 size_t*,因為 size_t 的大小
11/18 21:32, 5F

11/18 21:33, , 6F
根據定義會等於 void * 的大小,所以 64/32 bit 都會適用!
11/18 21:33, 6F

11/18 21:33, , 7F
當然,也可能有別的做法啦!
11/18 21:33, 7F

11/18 21:37, , 8F
謝謝教授!但我還是有一些疑問。當我想把舊的FIRST
11/18 21:37, 8F

11/18 21:38, , 9F
轉型成SIZE_T*扔進新來的物件時
11/18 21:38, 9F

11/18 21:39, , 10F
那是否代表我要把*P也轉型成SIZE_T*??
11/18 21:39, 10F

11/19 02:00, , 11F
不太懂你的問題,不過其實重點是要把 address 寫進去就好了
11/19 02:00, 11F

11/19 11:59, , 12F
嗯,大概抓到感覺了,謝謝各位
11/19 11:59, 12F
文章代碼(AID): #1GgDpnAN (EE_DSnP)