作者goodsheng (恩哈哈)
看板C_and_CPP
標題[問題] BCB6 字串內容轉陣列
時間Thu Sep 17 16:56:42 2015
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
Borland C++ 6 Builder
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
無
問題(Question):
字串內容是否可以轉為陣列表示
餵入的資料(Input):
字串 BUF = "ABCDEF"
預期的正確結果(Expected Output):
轉為矩陣 BUF[6] = {A,B,C,D,E,F}
以上需尋求協助,謝謝!!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.230.231.21
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1442480205.A.D92.html
※ 編輯: goodsheng (36.230.231.21), 09/17/2015 17:12:24
後來試了 char 成功了
char BUF[2] = {"AB"};
Panel2->Caption = BUF[0];
Panel3->Caption = BUF[1];
如此 BUF[0]="A"
BUF[0]="B"
※ 編輯: goodsheng (36.230.231.21), 09/17/2015 17:35:56
謝謝snow大,後來查有另法。
char tstr[6];
String Str = "FABCDE";
strcpy(tstr,Str.c_str());
Panel2->Caption = tstr[2];
Panel3->Caption = tstr[4];
如此 tstr[2]="B"
tstr[4]="D"
抱歉我完全新手阿,所以很多沒能搞懂,但又必須上線..
※ 編輯: goodsheng (36.230.231.21), 09/17/2015 20:15:01
→ TobyH4cker: 你要幹嘛 09/18 09:19
→ goodsheng: 字串要方別把字取出來判斷,但最後還會把字轉成10進位 09/19 11:40
→ goodsheng: 所以原本字串中的字是16進位的字(0~F) 09/19 11:40
→ goodsheng: 但有個問題,就是如果要轉為10進位之前,好像要把字再 09/19 11:42
→ goodsheng: 轉回String才能轉為數值 09/19 11:43
→ goodsheng: 也就是利用以下 09/19 11:44
→ goodsheng: AnsiString Str = "A"; 09/19 11:44
→ goodsheng: AnsiString Str2 = "0x" + Str; 09/19 11:44
→ goodsheng: int Value = StrToInt(Str2); 09/19 11:45
→ goodsheng: 如此 Value = 10 09/19 11:45
→ TobyH4cker: 如果是整個字串轉為16進位就是+"0x"再ToInt 09/28 12:07
→ TobyH4cker: 視 09/28 12:09