AnsiString 原來是一個字符數組.

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

通常,AnsiString類的的存取函數在大多數情況下已經夠用.不過有時嫌繁瑣.比方說,

求已知某AnsiString,解析其每個字符,其中字母為命令,數字為參數.

按照AnsiString的函數寫,如下:

AnsiString IPData;

IPData = Uppercase(IPData);

for(int i = 1;i <= IPData.Length();i++)

{

if( IPData.SubString(i,1) >= "A" && IPData.SubString(i,1) < "Z"

|| IPData.SubString(i,1) == "Z" )

{

// 這是命令;

}

else

if( IPData.SubString(i,1) >= "0" && IPData.SubString(i,1) < "9"

|| IPData.SubString(i,1) == "9" )

{

// 這是數字

}

}

如果黨成字符數組,則可做如下操作:

AnsiString IPData;

IPData = Uppercase(IPData);

for(int i = 1;i <= IPData.Length();i++)

{

if( IPData[i] >= 'A' && IPData[i] < 'Z' || IPData[i] == 'Z' )

{

// 這是命令;

}

else

if( IPData[i] >= '0' && IPData[i] < '9' || IPData[i] == '9' )

{

// 這是數字

}

}

注意,數組的首個元素為1,而不是0,Why???

感覺上,此種方法速度要快,不知道是否為真,因為沒有研讀源碼,無從驗證.

這是幾年前,2000年吧,剛學bcb時,不懂AnsiString,只知道數組與指針,做了很多實驗,用

ShowMessage看結果,發現還能用.

也許很土,好象是采用連加法做乘法一樣.前幾天翻看以前的東西,發現自己在字符串的處理

上竟然困住了很久.

往事不堪回首.從單片機匯編到計算機c,c++我用了太長的時間.現在的感覺,是,用是夠了,可理論

仍然不完善.

我的本行是機電一體化.對編計算機程序是個外行,永遠都會是.因為我沒有學過操作系統,數據結構,

沒有基礎,永遠只是門外漢.

說句好聽的,我是屬于邊緣性人才吧.就象雙料間諜,必須承受太多的痛苦.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航