[問題] 關於指標陣列取位址
我這邊想使用指標陣列來模擬出資料結構的效果
例如我給定兩陣列
char *dir[2], *page1[2], *page2[2],
entry1[] = {"hello"}, entry2[] = {"world"};
entry3[] = {"hello"}, entry4[] = {"world"};
然後再建立指標陣列的連結關係
dir[0] = page1;
page1[0] = entry1;
page1[1] = entry2;
dir[1] = page2;
page2[0] = entry3;
page2[1] = entry4;
接著我再給一指標
char *ptr = dir;
之後就單用ptr來去存取到entry1, entry2, entry3, 與entry4的內容
不過這邊有一個小問題
當我的ptr要取出dir[0]中的記憶體位址回存至ptr中
讓指標指向page1的記憶體位址OB
會有型態不同的問題
勢必我一定要將程式轉型成改寫成 ptr = (unsigned char *)*ptr;
才能讓指標指向到page1的記憶體
目前以我的情況一定要用到型態轉型
才能達到單一指標指向到任一的entry上嗎??
謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.136.144.15
推
05/29 16:46, , 1F
05/29 16:46, 1F
→
05/29 16:46, , 2F
05/29 16:46, 2F
→
05/29 16:48, , 3F
05/29 16:48, 3F
推
05/29 16:50, , 4F
05/29 16:50, 4F
→
05/29 16:51, , 5F
05/29 16:51, 5F
→
05/29 16:51, , 6F
05/29 16:51, 6F
→
05/29 16:52, , 7F
05/29 16:52, 7F
→
05/29 16:52, , 8F
05/29 16:52, 8F
→
05/29 16:56, , 9F
05/29 16:56, 9F
→
05/29 16:56, , 10F
05/29 16:56, 10F
→
05/29 17:03, , 11F
05/29 17:03, 11F
推
05/29 17:29, , 12F
05/29 17:29, 12F
→
05/29 18:20, , 13F
05/29 18:20, 13F
→
05/29 18:50, , 14F
05/29 18:50, 14F
推
05/29 19:18, , 15F
05/29 19:18, 15F
→
05/29 19:20, , 16F
05/29 19:20, 16F
推
05/29 19:23, , 17F
05/29 19:23, 17F
→
05/29 19:24, , 18F
05/29 19:24, 18F
→
05/29 19:25, , 19F
05/29 19:25, 19F
→
05/29 19:59, , 20F
05/29 19:59, 20F
→
05/29 20:13, , 21F
05/29 20:13, 21F
→
05/29 20:31, , 22F
05/29 20:31, 22F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章