关于MFC中CString的简单定义问题

CStringStrProc(L"");CStringStrProc=L"";这两种方法都试过了这句话有错吗为什么StrProc总是无法初始化麻烦解释一下谢谢!不知道为什... CString StrProc(L"");

CString StrProc = L"";
这两种方法都试过了
这句话有错吗 为什么StrProc总是无法初始化 麻烦解释一下 谢谢!
不知道为什么 他就是初始化不了
::CString sstr = CString(L"");
DWORD NumberOfBytesWritten = 0;
char *tmpNewContent = new char[4096];
GetDlgItemText(IDC_EDIT_TEXT, sstr);
if (sstr.GetLength() >= 4096)
{
GetDlgItemText(IDC_EDIT_TEXT, sstr);
sstr.Append(L"发送的数据过长!");
SetDlgItemText(IDC_EDIT_MSG, sstr);
return;
}
::WideCharToMultiByte(CP_ACP, 0, (wchar_t *)sstr.GetString(), -1, tmpNewContent, 4096, NULL, NULL);
if (!WriteFile(hCom, tmpNewContent, 4096, (LPDWORD)&NumberOfBytesWritten, NULL))
{
GetDlgItemText(IDC_EDIT_MSG, sstr);
sstr.Append(L"发送失败!");
SetDlgItemText(IDC_EDIT_MSG, sstr);
return;
}
调试的时候发现他sstr的值永远都是“错误的指针” 不知道哪位高手遇过这种情况 麻烦解释一下 谢谢!
展开
 我来答
百度网友c4249ef
2009-08-03 · TA获得超过4867个赞
知道大有可为答主
回答量:1855
采纳率:0%
帮助的人:3230万
展开全部
建议用stl模板的string,比CString好用多了,提供了很多函数

包含头文件<string>

就可以用了

string a("asdf");
string a="aaaa";
都可以
忘至白葬不情必0T
2009-08-03 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:90%
帮助的人:1.2亿
展开全部
是L还是_T?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lweiyue
2009-08-03 · TA获得超过1471个赞
知道小有建树答主
回答量:645
采纳率:0%
帮助的人:436万
展开全部
你这样吧:CString StrProc = _T("");
其实如果定义空字符串的话,就这样就行了:CString StrProc;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lijiakxl
2009-08-03 · TA获得超过231个赞
知道小有建树答主
回答量:481
采纳率:0%
帮助的人:412万
展开全部
下面的方法是有效的
初始化 ""之间就要有内容
这个是C++的类 不必担心C语言中的初始值 初始值都是""空串
CString strProc = L"123";
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
JohnnyKwok0205
2009-08-03 · TA获得超过409个赞
知道小有建树答主
回答量:315
采纳率:0%
帮助的人:286万
展开全部
两种方法:
1.加头文件<tchar.h>,然后使用CString StrProc = _T("");形式

2.使用TEXT()函数把字符串包起来,即CString StrProc = TEXT("");形式
因为MSDN定义#define TEXT(quote) L##quote
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
幸巴达
2009-08-03 · TA获得超过1.2万个赞
知道大有可为答主
回答量:6953
采纳率:38%
帮助的人:2478万
展开全部
两种都行的。
L宏后面的字符是unicode字符。如果你没有定义unicode字符CString是用的多字符集。

CStringW strProc = L"";
CStringA strProc = "";
CString strProc = _T("");
以上三种写法在任何字符编码下都可以。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式