宽字符和窄字符的错误:
int num1,num2,num3;
char ch1[10],ch2[10],ch3[10];
GetDlgItem(IDC_EDIT1)->GetWindowTextW(ch1,10);
GetDlgItem(IDC_EDIT2)->GetWindowTextW(ch2,10);
num1=atoi(ch1);
num2=atoi(ch2);
num3=num1+num2;
itoa(num3,ch3,10);
GetDlgItem(IDC_EDIT3)->SetWindowTextW(ch3);
/exercise/exercise/testdlg.cpp(96) : error C2664: 'int CWnd::GetWindowTextW(LPTSTR,int) const' : cannot convert parameter 1 from 'char [10]' to 'LPTSTR'
1> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>f:/exercise/exercise/testdlg.cpp(97) : error C2664: 'int CWnd::GetWindowTextW(LPTSTR,int) const' : cannot convert parameter 1 from 'char [10]' to 'LPTSTR'
1> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>f:/exercise/exercise/testdlg.cpp(104) : error C2664: 'CWnd::SetWindowTextW' : cannot convert parameter 1 from 'char [10]' to 'LPCTSTR'
1> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>Build log was saved at "file://f:/exercise/exercise/Debug/BuildLog.htm"
1>exercise - 3 error(s), 0 warning(s)
正确做法:
int num1,num2,num3;
TCHAR ch1[10],ch2[10],ch3[10];
GetDlgItem(IDC_EDIT2)->GetWindowText(ch1,10);
GetDlgItem(IDC_EDIT3)->GetWindowText(ch2,10);
num1=_ttoi(ch1);
num2=_ttoi(ch2);
num3=num1+num2;
_itot(num3,ch3,10);
GetDlgItem(IDC_EDIT4)->SetWindowText((LPTSTR)ch3);