VS2015现在错误C4477“ fprintf”

Jos*_*emi 3 c++ visual-studio-2015

到目前为止,VS可以完美地编译我的代码,但是现在VS2015向我显示了我无法理解的警告。

我的代码:

 CString nombre=_T("Stack"), dsc=_T("overflow");
  _ftprintf(file, _T("%s %s);\n"), nombre, m_dsc);
Run Code Online (Sandbox Code Playgroud)

和VS2015:

警告C4477'fwprintf':格式字符串'%s'需要类型为'wchar_t *'的参数,而可变参数1的类型为'CString'

为什么?,为什么我不能使用CString而不是wchart_t?我想使用CString

提前谢谢了

约见

i48*_*486 5

_ftprintf(file, _T("%s %s);\n"), (LPCTSTR)nombre, (LPCTSTR)dsc);
Run Code Online (Sandbox Code Playgroud)


And*_*rey 5

我更喜欢 GetString() 而不是 C 风格的转换:

_ftprintf(file, _T("%s %s);\n"), nombre.GetString(), dsc.GetString());
Run Code Online (Sandbox Code Playgroud)

我建议考虑使用 std::fstream 来处理文本文件。