2012年5月1日火曜日

C スタイルの文字列に関連する CString の操作方法


CString オブジェクトを C スタイルの文字列として使用するには、オブジェクトを LPCTSTR にキャストします。 次の例では、CString は、読み取り専用の C スタイルの null で終わる文字列へのポインターを返します。 myString.">strcpy 関数が C スタイルの文字列のコピーを myString 変数に格納します。


      CString aCString = "A string";      char myString[256];      strcpy(myString, (LPCTSTR)aString);  

SetAt などの CString メソッドを使用して、文字列オブジェクトの中の文字を個別に変更できます。 ただし、LPCTSTR ポインターは一時的であり、CString が変更されたときに無効になります。 CString をスコープの外に出して自動的に削除することもできます。 w3.org/1999/xhtml">CString オブジェクトを使用するときは、常に最新の LPCTSTR ポインターを取得することをお勧めします。

CString データを直接変更するには、そのコピーが必要な場合があります。 CString オブジェクトを別のバッファーにコピーするには、より安全な関数 strcpy_s (または Unicode/MBCS 互換 _tcscpy_s) を使用します。 これは、次の例に示すように、文字を安全に変更できる場所です。


    CString theString(_T("This is a test"));  int sizeOfString = (theString.GetLength() + 1);  LPTSTR lpsz = new TCHAR[sizeOfString];  _tcscpy_s(lpsz, sizeOfString, theString);  //... modify lpsz as much as you want         
メモ

strcpy_s (or the Unicode/MBCS-portable _tcscpy_s) is either a constwchar_t* (Unicode) or a constchar* (ANSI).">3 番目の引数にstrcpy_s(または Unicode、MBCS、-ノート_tcscpy_s) は、constwchar_t*(Unicode) またはconstorg/1999/xhtml">char*(ANSI)。 CString for this argument.">パス上の例は、CStringこの引数。 CString class that converts a CString to an LPCTSTR.">C++ コンパイラが自動的に定義された変換関数を適用、CString変換クラス、CStringにはLPCTSTR別に 1 つの型からキャスト操作を定義する機能は、C++ の最も有用な機能の 1 つです。



These are our most popular posts:

C++11 - Wikipedia

6.1 可変長引数テンプレート; 6.2 新たな文字列リテラル; 6.3 ユーザー定義リテラル; 6.4 マルチタスク用のメモリモデル; 6.5 スレッドローカル記憶 ... 特定のアプリケーションに のみ有効な機能を導入するよりも、システムやライブラリの設計が容易になるような改良 を行うこと。 ... また、C++の広大さ(アプリケーションやプログラミング・スタイルの多様性 も含む) を考えると、どれだけ経験を積んだプログラマも新しいプログラミング ... これ により、右辺値を変更可能なまま関数に渡すことができ、右辺値からのムーブを実現 できる。 read more

文字列処理関数

※スタイルシート未対応ブラウザではレイアウトを正確に再現できません。 <戻る 目次 ... C言語には、文字列を処理するための様々な関数が用意されています。 それらを ... strcpy関数を使うと、文字列のコピーを行うことが出来ます。 ... 実際には、文字列の 代入に使われることが多いようです。 ... なお、配列を関数に渡す方法は後に説明します 。 read more

GNU Octave: 16.2 Cスタイルの入出力関数

2006年7月20日 ... printf 関数は,任意の引数の数を表示するために使用することができます。関数の 呼び出しのときに与えたテンプレート文字列の引数は,追加的な引数の数についてだけ でなく,その型およびそれらの出力のために使用されるべきスタイル ... read more

C スタイルの文字列に関連する CString の操作方法

... 操作します。 (CString は、CStringT を特化して、CString がサポートする種類の文字 データを操作できるようにした typedef です。 ... ようにします。 CString では、C スタイル の文字列を使用でき、文字データに C スタイルの文字列としてアクセスできます。 ... も できます。 CString オブジェクトを使用するときは、常に最新の LPCTSTR ポインターを 取得することをお勧めします。 ... したがって、可変個の引数リストを取る関数に CString オブジェクトを渡すときは、明示的に型キャストによる変換を行う必要があります。 CString ... read more

Related Posts



0 コメント:

コメントを投稿