Re: 請問如何計算一個指標陣列的長度?

看板C_and_CPP (C/C++)作者 (Alien)時間16年前 (2009/06/08 15:08), 編輯推噓2(202)
留言4則, 2人參與, 最新討論串2/2 (看更多)
※ 引述《sunkill (風樹)》之銘言: : char** a; : a=new char*[3]; : for(int i=0;i<3;i++) a[i]=new char[10]; : for(int i=0;i<3;i++) delete [] p[i] : delete[] p; : 請問我要怎麼得到 3 呢? : 如果說是一個 function 傳進來的 value **a : 而這個 a 已經配製好空間也存了字串 : 感謝 有些方法是能夠在某些情況下知道 array size (之前有人提及過用 template) 但這只是某些情況合用, 比如你這情況就不行了. 治本的方法, 還是 1) 改用 vector, 或 2) 把 array size 另外記錄並加上新 method param 傳入相關 method, 或 3) 用特定 value indicate end-of-array (比如多allocate 一個 element, 把最後一個設定 NULL) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 202.155.236.82

06/08 16:16, , 1F
如果是 char* a[3] 3 是 new 呢?
06/08 16:16, 1F

06/08 16:22, , 2F
總之永遠不要當有方法直接找到 array size. 用我文章
06/08 16:22, 2F

06/08 16:22, , 3F
提到的方法解決吧, 這樣別人用起來也統一
06/08 16:22, 3F

06/08 17:43, , 4F
授教 謝謝
06/08 17:43, 4F
文章代碼(AID): #1ABBa4u5 (C_and_CPP)
文章代碼(AID): #1ABBa4u5 (C_and_CPP)