int CWnd::GetWindowTextW(LPTSTR,int) const”: 不能将参数 1 从“char [10]”转换为“LPTSTR”
2015-04-15 14:19
711 查看
问题描述:
[cpp] view
plaincopy
//定义了三个编辑框控件 接受num1 num2 num3
void CTestDlg::OnBnClickedButton1() //响应按钮 add
{
// TODO: 在此添加控件通知处理程序代码
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);//当计算好num1+num2 显示在第三个编辑框控件中
}
出现错误
f:/visual studio 2008/projects/mydialog/mydialog/testdlg.cpp(75) : error C2664: “int CWnd::GetWindowTextW(LPTSTR,int) const”: 不能将参数 1 从“char [10]”转换为“LPTSTR”
1> 与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换
1>f:/visual studio 2008/projects/mydialog/mydialog/testdlg.cpp(76) : error C2664: “int CWnd::GetWindowTextW(LPTSTR,int) const”: 不能将参数 1 从“char [10]”转换为“LPTSTR”
1> 与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换
1>f:/visual studio 2008/projects/mydialog/mydialog/testdlg.cpp(84) : error C2664: “CWnd::SetWindowTextW”: 不能将参数 1 从“char [10]”转换为“LPCTSTR”
1> 与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换
以前遇到这种问题一直是在问题处加 _T() 就行
但是这里加就会发出错误
f:/visual studio 2008/projects/mydialog/mydialog/testdlg.cpp(75) : error C2065: “Lch1”: 未声明的标识符
1.在以前的书上都是用的GetWindowText 现在的好多函数都加W 这是为什么呢??
2.还有加_T是什么意思啊???
3.帮忙解决上面的错误
问题解决:
[cpp] view
plaincopy
C/C++ codevoidCTestDlg::OnBnClickedButton1()//响应按钮 add{//TODO: 在此添加控件通知处理程序代码intnum1,num2,num3;
CString str1, str2, str3;
GetDlgItem(IDC_EDIT1)->GetWindowText(str1);
GetDlgItem(IDC_EDIT2)->GetWindowText(ch2);
num1=_ttoi((LPCTSTR)str1);
num2=_ttoi((LPCTSTR)str2);
num3=num1+num2;
_itot(num3,(TCHAR*)str3.GetBuffer(10),10);
str3.ReleaseBuffer();
GetDlgItem(IDC_EDIT3)->SetWindowText(str3);//当计算好num1+num2 显示在第三个编辑框控件中
[cpp] view
plaincopy
//定义了三个编辑框控件 接受num1 num2 num3
void CTestDlg::OnBnClickedButton1() //响应按钮 add
{
// TODO: 在此添加控件通知处理程序代码
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);//当计算好num1+num2 显示在第三个编辑框控件中
}
出现错误
f:/visual studio 2008/projects/mydialog/mydialog/testdlg.cpp(75) : error C2664: “int CWnd::GetWindowTextW(LPTSTR,int) const”: 不能将参数 1 从“char [10]”转换为“LPTSTR”
1> 与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换
1>f:/visual studio 2008/projects/mydialog/mydialog/testdlg.cpp(76) : error C2664: “int CWnd::GetWindowTextW(LPTSTR,int) const”: 不能将参数 1 从“char [10]”转换为“LPTSTR”
1> 与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换
1>f:/visual studio 2008/projects/mydialog/mydialog/testdlg.cpp(84) : error C2664: “CWnd::SetWindowTextW”: 不能将参数 1 从“char [10]”转换为“LPCTSTR”
1> 与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换
以前遇到这种问题一直是在问题处加 _T() 就行
但是这里加就会发出错误
f:/visual studio 2008/projects/mydialog/mydialog/testdlg.cpp(75) : error C2065: “Lch1”: 未声明的标识符
1.在以前的书上都是用的GetWindowText 现在的好多函数都加W 这是为什么呢??
2.还有加_T是什么意思啊???
3.帮忙解决上面的错误
问题解决:
[cpp] view
plaincopy
C/C++ codevoidCTestDlg::OnBnClickedButton1()//响应按钮 add{//TODO: 在此添加控件通知处理程序代码intnum1,num2,num3;
CString str1, str2, str3;
GetDlgItem(IDC_EDIT1)->GetWindowText(str1);
GetDlgItem(IDC_EDIT2)->GetWindowText(ch2);
num1=_ttoi((LPCTSTR)str1);
num2=_ttoi((LPCTSTR)str2);
num3=num1+num2;
_itot(num3,(TCHAR*)str3.GetBuffer(10),10);
str3.ReleaseBuffer();
GetDlgItem(IDC_EDIT3)->SetWindowText(str3);//当计算好num1+num2 显示在第三个编辑框控件中
相关文章推荐
- int CWnd::GetWindowTextW(LPTSTR,int) const”: 不能将参数 1 从“char [10]”转换为“LPTSTR”
- error C2664: “int CWnd::GetWindowTextW(LPTSTR,int) const”: 不能将参数 1 从“char [15]”转换为“LPTSTR”
- int CWnd::GetWindowTextW(LPTSTR,int) const”: 不能将参数 1 从“char [10]”转换为“LPTSTR”
- error C2664: “int CWnd::GetWindowTextW(LPTSTR,int) const”: 不能将参数 1 从“char [10]”转"相关的问题
- C类型转换:error C2664:不能将参数 从“int”转换为“const char *”
- int sprintf_s(char *,size_t,const char *,...)”: 不能将参数 2 从“const char [3]”转换为“size_t”
- 不能将参数 1 从“char [10]”转换为“LPTSTR”
- GetWindowTextW(LPTSTR,int) const' :cannot convert parameter 1 from 'char[10]
- Cstring 转 int 型问题(error C2664: “atoi”: 不能将参数 1 从“CString”转换为“const char *”))
- 关于“不能将参数1 从“CString”转换为“const char *””的一些思考
- error C2664: “LoadLibraryW”: 不能将参数 1 从“const char *”转换为“LPCWSTR”
- Cstring转int型问题(error C2664: “atoi”: 不能将参数 1 从“CString”转换为“const char *”))
- error C2664: “atoi”: 不能将参数 1 从“CString”转换为“const char *"
- 不能将参数 2 从“const char *”转换为“LPCWSTR”【转】http://blog.sina.com.cn/s/blog_4a94a0db0100ktxp.html
- C++: VC6转VC8出现问题:error C2664: “fopen”: 不能将参数 1 从“CString”转换为“const char *”
- error C2078: 初始值设定项太多 ;error C2664: 不能将参数 1 从“char”转换为“const char *
- 关于CString剖析,“strcmp”: 不能将参数1从“CString”转换为“const char *”问题
- inet_addr”: 不能将参数 1 从“CString”转换为“const char *”1>
- cvLoadImage 不能将参数1从 "_TCHAR*" 转换为"const char *"
- Cstring转int型问题(error C2664: “atoi”: 不能将参数 1 从“CString”转换为“const char *”))