VS調試錯誤記錄

error C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.

解決方案: 右鍵工程 --> 屬性 --> 預處理器 --> 預處理器宏定義 --> 編輯 --> 輸入 錯誤提示中的 _CRT_SECURE_NO_WARNINGS 參數 --> 應用即可


error C2664 “void ATL::CStringT<wchar_t,StrTraitMFC_DLL<wchar_t,ATL::ChTraitsCRT<wchar_t>>>::Format(UINT,...)”: 無法將參數 1 從“const char [3]”轉換為“const wchar_t *”

問題分析
VC2005及更高版本默認使用Unicode字符集,CString里存的是寬字符,也就是wchar_t,而不再是char。你可以這么寫:

  string.Format(_T("%4d-%2d-%2d"),st.wYear,st.wMonth,st.wDay)

以后寫程序的時候,定義字符串變量,不要用 char* ,而用 TCHAR*。 所有字符串常量,不要直接用 " ",而要用 _T("")。
舉個栗子:

TCHAR* str = _T( "Hello, World" );MessageBox( _T( "Hello" ));

【注】 以上內容是在MFC里面的書寫方式。寫控制臺程序的話,就不用了。原鏈

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 錯誤:1000 SQLSTATE: HY000 (ER_HASHCHK)消息:hashchk 錯誤:1001 SQ...
    灼灼2015閱讀 23,616評論 0 6
  • C/C++輸入輸出流總結 前兩天寫C++實習作業,突然發現I/O是那么的陌生,打了好長時間的文件都沒有打開,今天終...
    LuckTime閱讀 1,748評論 0 6
  • 編譯過程 如果需要弄清整個編譯過程,那還得好好復習下編譯原理。這里只是通過一個小例子討論大致過程。 準備好一個he...
    紙簡書生閱讀 1,081評論 0 3
  • ## 可重入函數 ### 可重入性的理解 若一個程序或子程序可以安全的被并行執行,則稱其為可重入的;即當該子程序正...
    夏至亦韻閱讀 725評論 0 0
  • Numpy讀寫文件 數據分析常用的函數 數組修剪和壓縮 階乘 相關性 判斷數組里數據正負性 ‘’乘與dot函數*N...
    深思海數_willschang閱讀 6,472評論 0 6