刚学C++,不好意思~问一个小问题,
1. LPCTSTR lp=_T("123");
cout<<l<<endl; //结果是004021C82. CString cs="123";
lp=(LPCTSTR)cs;
cout<<l<<endl; //结果是003934C8
3. string s="123";
cs=s.c_str();
lp=(LPCTSTR)cs;
cout<<l; //结果是003934C8,都是"123",为什么直接赋值给LPCTSTR和先给string或CString再转化得的结果不同?
现在遇到的问题是,我有一些数据存放在string里,想要像1方式赋值给赋值给LPCTSTR lp,产生了错误,请高手指点一下,谢谢~~
1. LPCTSTR lp=_T("123");
cout<<l<<endl; //结果是004021C82. CString cs="123";
lp=(LPCTSTR)cs;
cout<<l<<endl; //结果是003934C8
3. string s="123";
cs=s.c_str();
lp=(LPCTSTR)cs;
cout<<l; //结果是003934C8,都是"123",为什么直接赋值给LPCTSTR和先给string或CString再转化得的结果不同?
现在遇到的问题是,我有一些数据存放在string里,想要像1方式赋值给赋值给LPCTSTR lp,产生了错误,请高手指点一下,谢谢~~
cout < <l < <endl; //结果是004021C8
CString cs="123";
lp=(LPCTSTR)cs;
cout < <l < <endl; //结果是003934C8
string s="123";
cs=s.c_str();
lp=(LPCTSTR)cs;
cout < <l; //结果是003934C8,
你是不是这样定义的