ページ

2013年7月20日土曜日

CString をprintf で使ってハマッた

例えば次のような単純なコードのようにCString をprintf()を使って出力しようとする。

CString buf = "abcd";
printf_s("%s\n", buf);


で、出力結果が
a
となってしまって、1文字しか出ない。


この問題、色々なサイトに記事があるが、「printfはCStringにAFXが対応しているぜ。」と書いてあって、なかなか解決方法が見つからなかったが、答えは簡単だった。

printf_s("%S\n", buf);

のように%sを%Sの大文字にしてあげると出た!

あー、1日はまってしまった。
でもこれで「スッキリ」。

0 件のコメント:

コメントを投稿