全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2294
推到 Plurk!
推到 Facebook!

AnsiString的比較字串會怪怪的!

 
lcsboy
版主


發表:87
回覆:622
積分:394
註冊:2002-06-18

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-07-19 09:53:45 IP:61.222.xxx.xxx 未訂閱
只要是AnsiString的東東, 比如最近我在玩StringGrid 因為要比整排的字串, 原字串是放在Str if(Str==StringGrid1[1][j]) 這樣居然會摃龜, 而且我用Debug去看, 兩個字串真的一樣....my god, bug! 後來改成這樣 String CmpStr=StringGrid1[1][j]; if (Str==CmpStr) 哇, 居然ok了. 以前記得也發生過類似的問題, 也是這樣解的 我在Debug時, 如果用第一個寫法, 在之前加 int aa, bb; aa=Str.Length(); bb=StringGrid1[1][j].Length(); 這樣也不會出問題..........@.@ 好像要單獨取出來比, 就不會出問題
小貓
一般會員


發表:14
回覆:23
積分:12
註冊:2002-07-04

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-07-22 10:16:24 IP:211.74.xxx.xxx 未訂閱
我有試過...,可是我的不會ㄝ...怪了,請問你是在哪一種情況下會發生此一問題ㄋ
lcsboy
版主


發表:87
回覆:622
積分:394
註冊:2002-06-18

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-07-22 10:28:26 IP:61.222.xxx.xxx 未訂閱
如果你只是為了測試, 寫了兩行, 直接比當然不會出現問題 而我的例子是, 去抓所有IE裡面的網址再拿來比 就有可能出槌, 並不是每一個都會出槌 後來受不了, 就用傳統的strnicmp -> OK
dllee
站務副站長


發表:321
回覆:2519
積分:1711
註冊:2002-04-15

發送簡訊給我
#4 引用回覆 回覆 發表時間:2002-07-23 11:08:22 IP:61.231.xxx.xxx 未訂閱
說真的,這個 AnsiString 在 BCB 中實在是有點不太聽話!    不知各位有沒有用過     AnsiString aString;    aString.printf("This is a test"); aString.printf("Value=%d",100); aString.sprintf("This is a test"); aString.sprintf("Value=%d",100);    在說明文件中,  Sets the value of the AnsiString given a format string and its arguments. AnsiString::printf() 及 AnsiString::sprintf() 都是可以設定 AnsiString 本身的內容,但在實際使用時,「有時」真的可以設進去,「有時」就是不行!!
------
http://www.ViewMove.com
lcsboy
版主


發表:87
回覆:622
積分:394
註冊:2002-06-18

發送簡訊給我
#5 引用回覆 回覆 發表時間:2002-07-23 14:01:39 IP:211.23.xxx.xxx 未訂閱
BCB裡面大量使用AnsiString 很好, 而且跟VB一樣簡單 用了那麼久, 覺得只有比對字串會出問題, 餵字串給它還沒出過問題 後來我的Wordaround就是 只要想要比對的字串含26字母之外的字元 那就用strcmp之類的傳統比對法 這個作法, 實作了一個多星期還沒出槌過 ^^
bruce0211
版主


發表:157
回覆:668
積分:279
註冊:2002-06-13

發送簡訊給我
#6 引用回覆 回覆 發表時間:2002-08-08 08:37:49 IP:210.208.xxx.xxx 未訂閱
哪天忘了在哪看到 AnsiString 居然也有比較函式....AnsiCompareStr()
系統時間:2024-04-26 6:21:26
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!