請問char陣列轉成string 的問題 |
答題得分者是:RaynorPao
|
cowbjt
一般會員 發表:11 回覆:30 積分:8 註冊:2004-07-16 發送簡訊給我 |
我現在情況是:
會先要使用者輸入一字串
然後依這字串的長度new 一個char陣列
再將這列陣用亂數填入英文字母
然後將這個陣列轉成字串,印出來 而出現的問題是:
一般情況下都很正常,但是
1. 如果輸入的字串只有1個字母的話,印字串會有二個字母
2. 如果輸入的字串有三個字母的話,會印出四個字母
前三個會是亂數產生的,最後一個固定是'A'
(我亂數填入的是(0~26)+97,也就是小寫的字母) 以上是用bcb5 的情況,我試過用bcb6
好像在輸入的字串是1、4、5個字母時有問題的樣子
以下是我的程式碼
int len = input->Text.Length(); char *temp = new char[len]; for(int i = 0; i |
RaynorPao
版主 發表:139 回覆:3622 積分:7025 註冊:2002-08-12 發送簡訊給我 |
引言: 我現在情況是: 會先要使用者輸入一字串 然後依這字串的長度new 一個char陣列 再將這列陣用亂數填入英文字母 然後將這個陣列轉成字串,印出來 而出現的問題是: 一般情況下都很正常,但是 1. 如果輸入的字串只有1個字母的話,印字串會有二個字母 2. 如果輸入的字串有三個字母的話,會印出四個字母 前三個會是亂數產生的,最後一個固定是'A' (我亂數填入的是(0~26)+97,也就是小寫的字母) 以上是用bcb5 的情況,我試過用bcb6 好像在輸入的字串是1、4、5個字母時有問題的樣子 以下是我的程式碼int len = input->Text.Length(); char *temp = new char[len]; for(int i = 0; i cowbjt 你好: (1)先試試改成這個樣子寫,可不可行呢 (字串必須以 0x00 結尾)? int len=Edit1->Text.Length(); char *temp=new char[len+1]; for(int i=0; i-- Enjoy Researching & Developing --
------
-- 若您已經得到滿意的答覆,請適時結案!! -- -- 欲知前世因,今生受者是;欲知來世果,今生做者是 -- -- 一切有為法,如夢幻泡影,如露亦如電,應作如是觀 -- |
cowbjt
一般會員 發表:11 回覆:30 積分:8 註冊:2004-07-16 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |