作者smilecat13 (微笑的貓)
看板C_and_CPP
標題[問題] 讀檔 如何知道每行字元
時間Mon Nov 5 19:20:14 2012
問題(Question):
(題目是infix expression轉成postfix,再把postfix的運算結果列出。)
一個file裡有多行測資,
我想要一次一行讀進一個陣列裡,之後要針對這個陣列做strtok以及運算。
但因為不曉得測資裡每行的字元數上限為多少,
所以不太曉得要如何分配字元陣列的大小。
C++的話,我現在只知道用istream的getline讀檔,但它要指定要讀進多少個字元。
不曉得有沒有比較好的方式? 而且也不會浪費記憶體空間。
(用C的話也可以)
(想過要動態分配,但卻不知道測資每行字元數上限)
(p.s. 規定不能用vector... orz)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.124.27
→ anotherday:std::getline(istream,std::string) , string.h 11/05 19:22
有想過用string型態,但這樣的話就不能用strtok和atoi了 @@
※ 編輯: smilecat13 來自: 140.113.124.27 (11/05 19:30)
→ yan12125:string::c_str() 11/05 19:33
→ tjjh89017:sstream 11/05 19:46
→ wtvwtvwtv200:strtok可以用stbstr()+find_first_(not)_of代替 11/05 20:02
→ MOONRAKER:定一個char[1024]重覆使用不就結了 你又不是只有8K好用 11/05 22:33