使用此代码我在atoi
从CString
转换为int
时收到错误:
int nrCentrala; CString idCentrala;
GetDlgItem(IDC_EDIT_IDCENTRALA)->GetWindowText(idCentrala);
nrCentrala = atoi(&idCentrala);
其中IDC_EDIT_IDCENTRALA
是编辑控件。
Error 7 error C2664: 'atoi' : cannot convert parameter 1 from 'CString *' to 'const char *'
答案 0 :(得分:6)
CString为LPCTSTR提供重载运算符。另外,请使用_tstoi,以防您使用Unicode库进行编译,例如
nrCentrala = _tstoi(idCentrala);
答案 1 :(得分:2)
您将指针传递给CString
(CString*
类型),而不是const char*
所期望的atoi()
。正确的电话是nrCentrala = atoi(idCentrala.GetString());