看板 Perl 關於我們 聯絡資訊
※ 引述《wawawa (哇哇哇○( ̄﹏ ̄)○)》之銘言: : ※ 引述《billmax (無)》之銘言: : : 謝謝您的回覆, 我用第一種方試就可以了 : : 不過又出現一個問題, 如果在我程式後面接上 : : my @k = keys $hash[0]; : : 在執行的時候就會出錯 : : " Type of arg 1 to keys must be hash (not array element)“" : : 這應該是說key的後面應該接hash 而不是array : : 這到底要怎麼解決?先謝啦! : my @hash; : $hash[0]{'a'}=0; : $hash[0]{'b'}=1; : $hash[1]{'a'}=2; : $hash[1]{'b'}=3; : foreach(keys %{$hash[0]}){ : print "$_\n"; : } 謝謝WAWAWA前輩的回覆 還有個問題要請教您 如果把你的程式改成這樣 $hash[0]{'a'}=0; $hash[1]{'b'}=1; $hash[0]{'c'}=2; $hash[1]{'d'}=3; foreach(keys %{$hash[0]}){ print "$_\n"; } 只會秀出 c 而已, 並不會出現 a 跟 c 這是不是因為是陣列的關係,記憶體已經被分配好,所以只能回頭改key, 而不能新增key? 如果是這樣,能有什麼辦法解法? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.68.183.170
cutecpu:奇怪,我會a、c都會秀出來耶 02/17 18:43
jiansu:我a.c也出的來... 02/17 22:39
wawawa:我a.c都秀的出來 02/17 23:25
billmax:謝謝各位的幫忙,是我自己寫錯了 -_-!!! 02/20 10:24