1.CString ::のisEmpty
BOOLのisEmpty()constは、
戻り値:CStringの長さがゼロ、0であれば、そうでない場合は0。
説明:このメンバ関数はCStringオブジェクトが空であるかどうかをテストします。
例:
次の例では、CStringの::のisEmptyを使用することを示しています。
// CStringの::のisEmpty例
CStringのS;
ASSERT(s.IsEmpty())。
CString :: GETLENGTHを参照してください。
2.CString ::左
CStringの左(int型nCount)のconst;
(CMemoryException)投げます。
戻り値:文字列はnCount文字の前に返されます。
例:
CStringのS(_T( "ABCDEF"));
ASSERT(s.Left(2)== _T( "AB"));
3.CString :: loadStringは
BOOL loadStringは(UINT NID)。
(CMemoryException)投げます。
戻り値:成功したロード・リソースゼロ以外の値が返された場合、それ以外の場合は0を返します。
Windowsの文字列リソースのIDをNID。
説明:このメンバ関数は、NIDにより識別される、Windowsの文字列リソースを取得することで、既存のCStringオブジェクトに配置します。
例:
次の例では、CStringの:: loadStringはの使用方法を示します。
// CStringの:: loadStringは例
#define IDS_FILENOTFOUND 1
CStringのS;
(もし!s.LoadString(IDS_FILENOTFOUND))
4.CString :: MakeLower
MakeLowerを()無効; //文字小文字を変更
5.CString :: MakeReverse
MakeReverseを()無効; //文字を逆さま
6.CString :: MakeUpper
MakeUpperを()無効; //は大文字を変更
::ミッド7.CString
CStringのミッド(INT nFirst)のconst;
CStringのミッド(nFirst INT、INT nCount)のconst;
nCountインデックスを起動は、文字の数を抽出する位置を抽出するnFirst代表を表します
示例:
CStringのS(_T( "ABCDEF"));
ASSERT(s.Mid(2、3)== _T( "CDE"))。
8.CString :: ReleaseBuffer
無効ReleaseBuffer(int型nNewLength = -1);
パラメータ:nNewLength
ヌル文字の終わりを数えていない、表現文字のこの文字列の新しい長さ。単語の場合
文字列の最後がヌル文字で、-1のデフォルトパラメータ値は、CStringのサイズを設定します
文字列の現在の長さ。
説明:
GetBufferバッファによって割り当てられたの使用を終了しReleaseBufferを使用してください。あなたが遅いわかっている場合
バッファゾーンがヌルで終了する文字列であり、nNewLengthパラメータが省略されてもよいです。文字の場合
文字列は、文字列nNewLengthの長さを指定するために使用することができ、ヌル終端文字ではありません。呼び出し
ReleaseBufferのCStringまたは他の操作の後、アドレスが無効GetBufferによって返されます。
例:
次の例では、CStringの:: ReleaseBufferの使用方法を示しています。
// CStringの:: ReleaseBuffer例
CStringのS;
S = "ABC";
LPTSTRのP = s.GetBuffer(1024)。
strcpyの(P、 "ABC"); //バッファとして使用
ASSERT(s.GetLength()== 3); //文字列の長さ= 3
s.ReleaseBuffer(); //これで、P、無効な余分なメモリを解放。
ASSERT(s.GetLength()== 3)であり; //長さは依然として3であります
9.CString ::削除
int型のCString ::(TCHARのCH)を削除します。
戻り値:削除文字列から文字の数を返します。あなたが変更しない場合はゼロの文字列が返されます。
パラメータ:chは文字の文字列から削除。
説明:この関数は、文字列から削除例部材をCHに使用されます。文字とこれを比較し、大文字と小文字が区別され
A.
例:
小文字の「C」から削除//文:
CStringのSTR(「これはテストです。」);
INT、N = str.Remove( 'T')。
ASSERT(N == 2)。
ASSERT(STR ==「これは、ESです。」);
10.CString ::置き換え
int型(TCHAR CHOLD、TCHAR chNew)を交換してください。
int型(LPCTSTR lpszOld、LPCTSTR lpszNew)を交換してください。
戻り値:交換する文字の数を返します。文字列が変更されない場合は、ゼロが返されます。
パラメータ:CHOLDはchNew文字を交換します。
chNewは、CHOLDの文字を置き換えたいです。
lpszNewを置き換えする文字列を含む文字列へのポインタをlpszOld。
文字列、lpszOldを置き換えるために使用する文字を含む文字列へのポインタをLpszNew。
説明:このメンバ関数は、別の文字の文字を置き換えます。関数を使用して、最初のプロトタイプの文字列chNew
フィールド交換CHOLD。指定された文字列置換を有する第二のプロトタイプ機能はlpszNew lpszOldを指定しました
サブストリング。
交換後は、文字列が増加または減少することが可能である。lpszNew、それはlpszOldのため長さ
それは同じである必要はありません。両方のバージョンでは、大文字と小文字が区別マッチングの形態です。
例:
//最初の例では、古いものと新しいものは、同じ長さを持っています。
CStringのstrZap(「C - - 」)。
INT、N = strZap.Replace( ' - '、 '+')。
ASSERT(N == 2)。
ASSERT(strZap ==「C ++」);
// 2番目の例では、古いものと新しいものは、異なる長さを持っています。
CStringのstrBang(「みんなはアイスホッケーが好き」);
N = strBang.Replace(「ホッケー」、「ゴルフ」)。
ASSERT(N == 1)。
N = strBang.Replaceは(「好き」、「演じます」);
ASSERT(N == 1)。
N = strBang.Replace(「氷」、NULL);
ASSERT(N == 1)。
(strBang ==「誰もがgolgを果たしている」)をアサート。
//今、私たちはあなたの文章中の余分なスペースを持って、注意してください。
//この余分なスペースを削除するには、例えば、「氷」、交換する文字列に含めることができます。
11.CString :: ReverseFind
int型ReverseFind(TCHAR CH)のconst;
戻り値:このCStringオブジェクトと文字要件の試合の最後の文字のインデックスは、近づいていない場合
目的の文字または-1。
パラメータ:検索するchの文字。
説明:部分文字列マッチングの最後の文字で、このCStringオブジェクト検索でこのメンバ関数。この機能
実行時の関数strrchrに似ています。
例:
// CStringの:: ReverseFind例
CStringのS( "ABCABC");
ASSERT(s.ReverseFind( 'B')== 4)。
12.CString ::右
CStringの右(int型nCount)のconst;
(CMemoryException)投げます。
戻り値:返される文字列は、最後のnCount文字です。
CStringのS(_T( "ABCDEF"));
ASSERT(s.Right(2)== _T( "EF"))。
13.CString ::関連項目SetAt
空関連項目SetAt(nIndex、TCHAR CHをINT);
説明:文字列配列として理解することができ、不適切なデバッグエラーがある場合、nIndex範囲注[]に似て関連項目SetAt。CHの置換文字、nIndexの位置の文字がchのとなり
例:
CStringのS( "ABC");
s.MakeReverse();
ASSERT(S == "CBA");
14.CString :: TrimLeftは
TrimLeftは()を無効に。
空のCString :: TrimLeftは(TCHAR chTarget)。
注意:引数なした場合は、文字(\ n個の\ tのスペースなど)を削除するには、左から、そのような文字に非コースを体験して、あなたはまた、指定したパラメータが満たさ文字列である場合、それらの文字を削除するように指定することができます。 1つの文字が削除されます。
\ nは改行
\ tタブ文字
実施例1:
CStringのSTR = "\ N- \ T A"。
str.TrimLeft();
strが「A」です。
例2:
CStringのSTR = "abbcadbabcadb"。
str.TrimLeft( "AB");
その結果、「cadbabcadb」
str.TrimLeft( "AC");
その結果、「bcadbabcadb」
15.CString :: TrimRight
)(TrimRightを失います。
空のCString :: TrimRight(TCHAR chTarget)。
空のCString :: TrimRight(LPCTSTR lpszTargets)。
説明:上記と同様の使用法。
16.CString ::比較
INT(LPCTSTRのlpsz)のconstの比較。
戻り値:、0として文字列を返す-1 1つの戻りlpsz大文字と小文字が区別文字より大きく、より少ないlpsz
例:
CStringのS1( "ABC");
CStringのS2( "ABD")。
ASSERT(s1.Compare(S2)== -1)。
ASSERT(s1.Compare( "阿部")== -1
17.CString :: CompareNoCase
int型CompareNoCase(LPCTSTR lpsz)のconst;
戻り値:0として文字列を返す、-1未満lpsz、1つのより大きなリターンlpsz大文字小文字を区別しない文字を
18.CString ::ソート
ソート(LPCTSTRのlpsz)のconst int型。
同CStringの比較::
19.CString :: CollateNoCase
int型CollateNocase(LPCTSTR lpsz)のconst;
同CStringの:: CompareNoCase
20.CString :: CStringの//コンストラクタ
CStringの();
CStringの(のconst CStringの&stringSrc)。
CStringの(TCHAR CH、INT nRepeat = 1)。
CString(LPCTSTR lpch、int型NLENGTH)。
CStringの(のconst unsigned char型の*のPSZ)。
CStringの(LPCWSTRのlpsz)。
CStringの(LPCSTRのlpsz)。
例:
CStringのS1;
CStringのS2( "猫");
CStringのS3 = S2。
CStringのS4(S2 + "" + S3)。
CStringのS5( 'X')。// S5 = "X"
CStringのS6( 'X'、6)。// S6 = "XXXXXX"
CStringのS7((LPCSTR)ID_FILE_NEW)。// S7 =「新しいドキュメントを作成します。」
CStringの都市=「フィラデルフィア」。
21.CString ::削除
INT削除(INT nIndex、INT nCount = 1)。
戻り値:文字列の長さは、前に削除します
nIndexは、nCountは、いくつかの文字を削除することで、削除する最初の文字です。私のテスト結果の結果によると:nCount>は、最大長さの文字列を削除するには - nCountが大きすぎると間違って(GetCountの()nIndex)、削除された十分な文字がない、この機能は実行されません。
例:
CStringのSTR1、STR2、STR3。
char型;
STR1 = "nihao"。
STR2 = "nIhao"。
int型のx;
//は、I =(STR1 == str2の)int型。
str1.Delete(2,3)。
nIndex(5-2)は、エラーを実行します - nCount(3)> GetCountの()の場合
22.CString ::空
空き空間()。
戻り値:操作を空にする値を返しません。
例:
CStringのS( "ABC");
s.Empty();
ASSERT(s.GetLength()== 0)。
23.CString ::検索
int型(TCHARのCH)のconstを探します。
int型の検索(LPCTSTR lpszSub)のconst;
int型(TCHAR chの、int型n始動)のconstを探します。
int型(LPCTSTR lpszSub、int型n始動)のconstを探します。
戻り値:-1を返し、その後、一致していません。インデックスは0から始まり、NSTAR代表文字のインデックス値は、検索を開始n始動、
これは、インデックスn始動文字を含む文字列です。
例:
CStringのS( "ABCDEF");
ASSERT(s.Find( 'C')== 2)。
ASSERT(s.Find( "デ")== 3)。
CStringのSTR(「星が並んでいます」);
ING N = str.Find( 'E'、5)。
ASSERT(N == 12)
24.CString :: FindOneOf
FindOneOf(LPCTSTR lpszCharSet)のconst int型。
戻り値:-1を返し一致していませんが、ゼロへのインデックス
注意:: lpszCharSetに含まれた文字列を返します。また、ゼロベースのインデックス値と
例:
CStringのS( "ABCDEF");
ASSERT(s.FindOneOf( "XD")== 3)。//「d」は最初のマッチです。
25.CString ::フォーマット
無効フォーマット(LPCTSTR lpszFormat、...);
無効フォーマット(UINT nFormatID、...);
パラメータ:書式制御文字列lpszFormat
nFormatIDの文字列識別子
例:
CStringのstrの。
Str.Format(「%のD」、13);
この時点のStr 13時
26.CString :: GetAt機能
TCHAR GetAt機能(int型nIndex)constは、
戻り値:nIndex文字ラベルを返しますが、あなたは文字列を配列として解釈されることができ、注意持続時間nIndex []に似GetAt機能、適切なデバッグエラーがない場合。
27.CString :: GetBuffer
LPTSTR GetBuffer(int型nMinBufLength)。
戻り値:(null終端まで)オブジェクトへのポインタLPTSTR文字バッファポインタ。
パラメータ:nMinBufLength
文字バッファ内の文字数の最小容量。この値はnull終了文字のためのスペースが含まれていません。
説明:このメンバー関数は、内部文字バッファへのポインタを返すのCStringへのポインタです。LPTSTRのconstを返すので、直接のCStringの内容を変更することができません。あなたは、文字列の内容を変更するGetBufferによって返されたポインタを使用する場合は、他のCStringメンバ関数は、前ReleaseBuffer関数を呼び出す使用する必要があります。
他のCStringの操作がCStringのバッファを引き起こす可能性があるため、ReleaseBuffer、おそらく無効GetBufferによって返されたアドレスを呼び出した後に再割り当てします。あなたはこのCStringの長さを変更しない場合、バッファが再割り当てされることはありません。このCStringオブジェクトが破壊されると、そのバッファメモリを自動的に解放されます。
注:文字列の長さを知っている場合は、終端のNULL文字を追加しないでください。あなたがバッファを解放するためにReleaseBufferを使用する場合しかし、あなたは、最終的な文字列の長さを指定する必要があります。あなたはヌル文字を追加する場合は、-1を通過したReleaseBuffer長パラメータを与える必要があり、ReleaseBufferはバッファのその長さSTRLENの実装を決定します。
例:
// CStringの:: GetBuffer例
CStringのS( "ABCD");
#ifdefを_DEBUG
afxDump << "のCStringの" << S << "\ nを";
#endifの
LPTSTRのP = s.GetBuffer(10)。
strcpyの(P、 "こんにちは"); // CStringオブジェクトに直接アクセスします。
s.ReleaseBuffer();
#ifdefを_DEBUG
afxDump << "のCStringの" << S << "\ nを";
#endifの
28.CString :: GETLENGTH
GETLENGTH()constはint型。
戻り値:バイトカウント文字列を返します。
説明:この関数は、このCStringオブジェクトのメンバーのバイト数を取得するために使用されます。このカウントには、NULL文字が含まれていません。
マルチバイト文字セット(MBCS)のために、GETLENGTH各8ビット・キャラクタ・カウント、すなわち、マルチバイト文字で開始および終了バイトが2バイトとしてカウントされます。
例
次の例では、CStringの:: GETLENGTHの使用方法を示しています。
// CStringの:: GETLENGTH例
CStringのS( "ABCDEF");
ASSERT(s.GetLength()== 6)。
29.CString ::挿入
int型インサート(int型nIndex、TCHARのCH);
int型インサート(int型nIndex、LPCTSTR PSTR)。
戻り値:nIndex文字(または文字列)である、修飾長さを返し挿入した後のインデックスの例
例:
CStringのSTR(「HockeyBest」);
INT、N = str.Insert(6「です」)。
ASSERT(N == str.GetLength())。
printf(「1:%Sの\ n」、(LPCTSTR)STR)。
N = str.Insert(6 '')。
ASSERT(N == str.GetLength())。
printf(「2:%Sの\ n」、(LPCTSTR)STR)。
N = str.Insert(555、 '1')。
ASSERT(N == str.GetLength())。
printf(「3:%Sの\ n」、(LPCTSTR)STR)。
輸出
1. Hockeyisベスト
2.ホッケーがベストです
!3.ホッケーがベストである
編集者:
http://blog.163.com/ccd_ok/blog/static/310238892007510113223798/