0
を2つの文字列を追加:は、このコードはコンパイルできません新しいLPSTRを作成するために一緒に
LPSTR a1 = "a1";
LPSTR lpResult = a1 + "a2";
は、どのように私は「A1A2」の文字列にlpResult長いポインタを得ることができますか?
を2つの文字列を追加:は、このコードはコンパイルできません新しいLPSTRを作成するために一緒に
LPSTR a1 = "a1";
LPSTR lpResult = a1 + "a2";
は、どのように私は「A1A2」の文字列にlpResult長いポインタを得ることができますか?
1つのオプションは、std :: string連結を使用することです。 MicrosoftのStringCchCat機能を使用することもできます。ここで
は例です:
#include <Strsafe.h>
//... later in your code:
LPSTR a1 = "a1";
LPSTR a2 = "a2";
TCHAR dest[ 5 ];
StringCchCopy(dest, 5, a1); // copy "a1" into the buffer
StringCchCat(dest, 5, a2); // concatenate "a2" into the buffer
それは取得できbehooveう[良い入門C++帳](http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-そしてリスト)。 –
...文字配列文字列はそのようには機能しません。しかし 'std :: string'は行います。ここでは、合計文字列を格納するために新しいメモリを割り当て、次に両方の部分をコピーしてその作業を行う必要があります。また、「長いポインタ」の部分は歴史的なものです。Windowsではなく長いポインタを区別することはできません。 – Rup
多くの言語では、そのような文字列を+演算子で連結することができますが、@RupのようにCではなく、 'std :: string'で行うことができます –