[問題]二維字串陣列的內涵
如果說字串陣列的名字所存的就是這個陣列在記憶體中的位址
那麼對一個字串用一個一維陣列存取而言 也就是第一個字元的位址
亦即&[array_name][0]
那如果我宣告一個二維陣列 char s[3][10] = {{abcd},{efgh},{hijk}};
那像s[1]就是拿取第二個字串"efgh"
而且s[1] == &(s[1][0])
那嚜s[i]就是一個一維陣列 存放著三個陣列的第一個字元的位址啊
且是一個array of pointer to character, i.e., string
那為何我printf("%p %p",s[1],&s[1]);時 印出來的是一樣的位址呢
不是應該前者是字串第一個字的位址 後者是存這前者的pointer的位址?
是哪裡出問題了?這種問題真的要弄懂啊 不然寫起來都怕怕的-皿-
請救救我......
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.241.190
→
07/14 23:24, , 1F
07/14 23:24, 1F
→
07/14 23:24, , 2F
07/14 23:24, 2F
→
07/14 23:58, , 3F
07/14 23:58, 3F
推
07/15 00:18, , 4F
07/15 00:18, 4F
→
07/15 00:19, , 5F
07/15 00:19, 5F
→
07/15 00:20, , 6F
07/15 00:20, 6F
→
07/15 01:03, , 7F
07/15 01:03, 7F
→
07/16 00:47, , 8F
07/16 00:47, 8F
Programming 近期熱門文章
PTT數位生活區 即時熱門文章
7
20