[問題] 動態增加資料數目

看板C_and_CPP (C/C++)作者 (阿康)時間14年前 (2011/10/18 13:37), 編輯推噓3(303)
留言6則, 6人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) VC++ 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 問題(Question): 我想設計可以動態增加資料數的名片程式 補充說明(Supplement): 不好意思我是新手對c沒有很厲害這個問題又不之如何查起 大概是這樣的,我希望可以設計一個名片程式,但是我卡在如何動態增加名片資料 例如程式一開始我想要給一個struct struct info { char *name; char *birth; char *phone; char *sex; int age; }; 然後main開始跑以後我希望可以不斷的增加info的數量 請問這要用什麼方式呢? 除非我一開始就是直接 int_main(){ info p1,p2.......p100 } 但是這明顯就是浪費記憶體空間 請問有辦法動態增加struct的數目嗎? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.32.191.224

10/18 13:38, , 1F
你需要的是動態陣列
10/18 13:38, 1F

10/18 13:47, , 2F
c++ -> Vector c -> malloc
10/18 13:47, 2F

10/18 13:47, , 3F
最基礎的DATASTRUCT跟你說使用LINKLIST
10/18 13:47, 3F

10/18 13:51, , 4F
比較簡單的寫法就是 malloc 與 realloc 搭配使用
10/18 13:51, 4F

10/18 14:03, , 5F
calloc會幫你初始化所有元素為零值 (∩_∩)
10/18 14:03, 5F

10/18 15:34, , 6F
比較簡單的方法是:讀一下STL的Vector用法
10/18 15:34, 6F
文章代碼(AID): #1EdH2hEf (C_and_CPP)
文章代碼(AID): #1EdH2hEf (C_and_CPP)