[問題] malloc用法

看板C_and_CPP作者 (ice)時間11年前 (2014/01/13 15:45), 編輯推噓5(5010)
留言15則, 10人參與, 最新討論串1/1
小弟新手最近在研究C語言的動態記憶體存取 碰到一個問題是假設我想要用陣列存取使用者所輸入的字串 但是我不想把矩陣大小訂死 有辦法用malloc去抓使用者輸入幾個字母嗎? 在此先謝過 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.36.235.208 ※ 編輯: leo19866 來自: 114.36.235.208 (01/13 23:55)

01/13 23:57, , 1F
何不直接試試?
01/13 23:57, 1F

01/14 00:02, , 2F
不可能。
01/14 00:02, 2F

01/14 00:20, , 3F
c++ vector?
01/14 00:20, 3F

01/14 00:42, , 4F
malloc你也是得告訴它size要多大啊,這怎麼抓...0rz
01/14 00:42, 4F

01/14 00:48, , 5F
自己寫動態擴充陣列
01/14 00:48, 5F

01/14 00:56, , 6F
人生苦短,愛用string(誤)
01/14 00:56, 6F

01/14 07:39, , 7F
Realloc
01/14 07:39, 7F

01/14 11:27, , 8F
man有提到%as可動態收字串
01/14 11:27, 8F

01/14 11:28, , 9F
不然可用%3mc或%3s,設定輸入字串
01/14 11:28, 9F

01/14 11:30, , 10F
改用%ms應該就是你要的
01/14 11:30, 10F

01/14 19:08, , 11F
可以手動做弊呀..p1=malloc(隨意);設定一個迴圈數字;
01/14 19:08, 11F

01/14 19:09, , 12F
p2=malloc(剛好長度); strcp; free(p1);
01/14 19:09, 12F

01/14 19:09, , 13F
y
01/14 19:09, 13F

01/14 19:28, , 14F
strlen -> malloc -> strncpy
01/14 19:28, 14F

01/14 23:21, , 15F
你要的是這種嗎?http://ideone.com/H1AsjL
01/14 23:21, 15F
文章代碼(AID): #1Ir0dy9M (C_and_CPP)