解決:錯誤1 error C2440: “初始化”: 無法從“char *”轉換為“ATL::CStringT
在一個測試 連線資料庫的 函式中 有類似 資料型別轉換的錯誤:
函式原始碼如下:
void CStudentScoreDlg::OnClickedButton1()
{
// TODO: 在此新增控制元件通知處理程式程式碼
MYSQL m_sqlCon;
mysql_init(&m_sqlCon);
// localhost:伺服器 root/xxx為賬號密碼 managesystemdb為資料庫名 3306為埠
if (!mysql_real_connect(&m_sqlCon, "localhost", "root", "xxx", "managesystemdb", 3306, NULL, 0))
{
AfxMessageBox(_T("訪問資料庫失敗!"));
CString e = mysql_error(&m_sqlCon);//需要將專案屬性中字符集修改為“使用多位元組字符集”或“未設定”
MessageBox(e);
return;
}
else
{
AfxMessageBox(_T("成功!"));
mysql_query(&m_sqlCon, "SET NAMES 'GB2312'");//解決從資料庫中讀取資料後漢字亂碼顯示的問題
}
}
函式中的 CString e = mysql_error(&m_sqlCon);
這行 報下面的錯誤
- 錯誤 1 error C2440: “初始化”: 無法從“char *”轉換為
“ATL::CStringT<BaseType,StringTraits>
還有幾個錯誤 - 錯誤 4 error C2664: “sendto”: 不能將引數 2 從“CString”轉換為“const char *”
錯誤 5 error C2664: “CWnd::SetDlgItemTextW”: 不能將引數 2 從“const char [4]”轉換為“LPCTSTR”
9 IntelliSense: “const char *” 型別的實參與 “LPCTSTR” 型別的形參不相容
- 7 IntelliSense: 不存在從 “char *” 轉換到
"ATL::CStringT<wchar_t, StrTraitMFC_DLL<wchar_t, ATL::ChTraitsCRT<wchar_t>>>"
的適當建構函式
問題來源:
unicode字元問題。2013工程預設是寬字元版本
解決方法:
選單 專案 -> 屬性 (開啟屬性頁) -> 配置屬性 -> 常規 -> 字符集
單前選中的應該是“使用Unicode字符集”,改為“使用多位元組字符集”
更改完後確定,即可
相關文章
- mysqldump error1066 錯誤的解決辦法MySqlError
- 無法初始化 sqlcmd 庫,錯誤編號為 -2147467259SQL
- 錯誤解決:cc: Internal error: Killed (program cc1)Error
- PHP curl error 60 錯誤解決PHPError
- 切換分支 error: Your local changes tby checkout: 錯誤解決方法Error
- HTTP 錯誤 500.19- Internal Server Error 錯誤解決方法HTTPServerError
- MySQL主從複製錯誤——列型別轉換錯誤MySql型別
- 【Jenkins】data stream error|Error cloning remote repo ‘origin‘ 錯誤解決JenkinsErrorREM
- 解決 eslint 的 Parsing error: Unexpected token 錯誤EsLintError
- HTTP 錯誤 500.21 - Internal Server Error 解決方案HTTPServerError
- mongodb錯誤解決辦法-bash: ./mongod: cannot execute binary file: Exec format errorMongoDBORMError
- VS2019中出現E01104“const char *”型別的值不能用於初始化“char *”型別的實體的錯誤的解決辦法型別
- SSL錯誤ssl connect error 35的解決方案Error
- Sublime Text 2報 Decode error - output not utf-8 錯誤的解決辦法Error
- IDEA解決Fatal error compiling: 錯誤: 無效的目標發行版:1.11IdeaError
- C++中string、char *、char[]、const char*的轉換C++
- C++中出現《E0144 "const char *" 型別的值不能用於初始化 "char *" 型別的實體》的錯誤解決方法C++型別
- char轉換成int
- Steam錯誤程式碼138怎麼辦?無法訪問社群提示138錯誤解決方法
- 織夢提示dedecms error warning錯誤的解決方法Error
- 畢設之錯誤解決辦法
- Idea編譯錯誤解決辦法Idea編譯
- Js錯誤Error物件詳解JSError物件
- command 'gcc' failed with exit status 1錯誤問題的解決辦法GCAI
- 使用fragment載入自定義fragment出現error inflating class fragment錯誤解決辦法FragmentError
- IDEA發生“Error:java: 錯誤: 不支援發行版本 5”錯誤的解決方案IdeaErrorJava
- ORA-29702:error occurred in Cluster Group Service operation錯誤解決Error
- ubuntu下import matplotlib錯誤解決辦法UbuntuImport
- tp5.0.20 分頁跳轉時URL錯誤的解決辦法
- PYTHON3 cx-Oracle 字符集 轉換錯誤的解決方案PythonOracle
- Qt error: LNK1104: 無法開啟檔案“releasexxxxx.exe”報錯解決方案QTError
- win10 操作無法完成錯誤0x0000709怎麼解決Win10
- steam商店錯誤程式碼-118解決方法介紹 steam商店無法登陸解決(無需加速器)
- FreeBSD系統下zfs: failed with error 6錯誤的解決方法AIError
- ERROR L107: ADDRESS SPACE OVERFLOW keil錯誤的解決方法Error
- Mysql出現連線錯誤解決辦法MySql
- ORA-39006錯誤原因及解決辦法
- Git 錯誤:fatel: loose object ... is corrupt 解決辦法GitObject
- iOS路上遇到的錯誤及解決辦法iOS