• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VC++2005で、CString型に16進文字列を入れたいのですが・・)

VC++2005で、CString型に16進文字列を入れたい!エラーが発生する。

このQ&Aのポイント
  • VC++2005で、CString型に16進文字列を入れる際にエラーが発生しています。
  • プログラムの一部にエラーがあり、エラーが修正されたら正しい結果が得られることを期待しています。
  • 初心者の方でVC++2005を使用しており、エラーの解決策を助言していただけると幸いです。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

CString::Formatに戻り値はありません。 自分自身が変更されることになります。 http://msdn.microsoft.com/ja-jp/library/18he3sk6.aspx どっちにみ + するのであれば、AppendFormatを使うほうが良いでしょう。 >strWork = strWork + strBuff.Format(_T("%02x"), tszBuff[un1]); strWork.AppendFormat(_T("%02x"), tszBuff[un1]);

taka077
質問者

お礼

早速の回答、ありがとうございます。 おかげさまで、思い通りの結果が得られました。 ちなみに、「strBuff」は作業用で、元の値は「tszBuff」へコピーされていますので、変更されても問題ありません。 AppendFormatで正常動作を確認した後に分かった事ですが、 strBuff.Format(_T("%02x"), tszBuff[un1]); strWork = strWork + strBuff; とやれば、正常に動作しました。 ただ、VC++6.0とVC++2005の違いがこれほどとは思いませんでした。

関連するQ&A