使用strcat時碰到的字元指標問題 |
尚未結案
|
Mmmoney
一般會員 發表:9 回覆:19 積分:5 註冊:2007-10-12 發送簡訊給我 |
這是出現錯誤結果的程式碼 [code cpp] char* TBclass:: ........ { char tttmp[10000]=" "; char *tmp; for(i=1;i<10000;i ) { tmp=&K[i].str ; strcat(tttmp, tmp ); } tmp=tttmp; return tmp; } tmp陣列大小和K陣列一樣. K[i].str的型態是char. 回傳後的結果是亂碼,如下 8i1@?811i 111@%!1/!11iO%iDY&4i1@x!1? A11?WiiO@wiwi1O?p1ii@xixi8Odii@€iX1xi矲1ii@xixiiiyi€?OO@OO?OOO@?蕸M9XL?96@/?C?91m偰UCi@iiiiiii簨J嶠ii@?4ii^yiii@yiiOO?813@@114CS9覡774i@7i-ii-ii4iiyiii@yiCOOf?4i@t44i19188i@?鬑4ii??iii8@=?iiii2f?8?88?88iO@??888888期?2222@??it?t??it?t?? [/code] ================================ 但改成下列就能出現正確結果: [code cpp] char *tttmp=new char[10000]; for(i=1;i<10000;i ) { tttmp[i]= K[i].str; } char* rt= tttmp; return rt; [/code] 結果是我想要的字母 數字! 請問第一段程式的錯誤是什麼阿? 我本來是想學習使用strcat的!!! 我怎麼看都"看似合理" 網路上查詢strcat都沒得到解答. |
GGump
一般會員 發表:2 回覆:16 積分:8 註冊:2006-08-04 發送簡訊給我 |
編輯記錄
GGump 重新編輯於 2008-05-01 10:29:50, 註解 無‧
|
Mmmoney
一般會員 發表:9 回覆:19 積分:5 註冊:2007-10-12 發送簡訊給我 |
|
暗黑破壞神
版主 發表:9 回覆:2301 積分:1627 註冊:2004-10-04 發送簡訊給我 |
|
Mmmoney
一般會員 發表:9 回覆:19 積分:5 註冊:2007-10-12 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |