次のコードに対して次の警告が表示される理由:)
コード:
_stprintf(m_szFileNamePath,_T("%s"),strFileName);
警告 C4996: '_swprintf': swprintf は ISO C 標準に準拠するように変更され、余分な文字数パラメーターが追加されました。従来の Microsoft swprintf を使用するには、_CRT_NON_CONFORMING_SWPRINTFS を設定します。
_strprintf はマクロであり、_UNICODE が定義されている場合は _swprintf に評価され、それ以外の場合は sprintf になります。
さて、この _swprintf は何でしょう。関数 swprintf がありますが、_stprintf が swprintf ではなく _swprintf に評価されるのはなぜですか。
_xxx 関数と xxx 関数の違いは何ですか?
編集:
_stprintf の UNICODE バージョンには 2 つの定義がありますが、どちらが含まれていますか?
tchar.h または strsafe.h にあるものは?