楽しく読めて役に立つ、オール書き下ろし記事でお送りする新しい事典
「なるほど事典」は、毎日早朝7時前から新着記事をリリース。通勤・通学のおともに、ぜひブックマークを!
>> 告白を断る方法 傷つけず、恨まれないように [恋愛お困り相談所]
>> 指が太いのが悩み 指を細くしたいと思ったら

CStringをLPSTRにキャストする方法

 
スポンサーリンク
 MFCでプログラムを組んでいると、文字列に関しては、便利なので、CStringクラスを使いまくると思います。しかし、Windows APIには、引数として、LPCTSTR型、LPTSTR型、LPCSTR型、LPSTR型が多いので困ることがあります。

 まず、渡すだけであれば、LPCTSTR型あLPCSTR型のところに、CStringをそのまま渡して構いません。

 受け取りバッファとして渡す場合が、問題になりますね。この場合は、どうすればよいのでしょうか?

 CStringには、GetBuffer()という関数がありますので、これを利用しましょう。すると、LPSTR型のポインタを得ることができますね。この関数の特徴として、後で必ずReleaseBudder()を呼び出して解放しなければいけないということがあげられます。注意が必要です。

スポンサーリンク
は編集部のオススメ記事です。