如何在Test(BSTR str)函数内部防止str参数为空?

iProgram 2005-05-30 11:01:06
写了个COM函数如下
Test(BSTR str)
{
int l=_tcslen(str);
...
}

调用:
TCHAR szData[255];
GetDlgItemText(IDC_EDIT_DATA, szData, 255);
comptr->Test(szData);

运行正常.
但是如果用户这样做:
BSTR str;
comptr->Test(str);
执行到Test函数int l=_tcslen(str);处就会异常,因为_tcslen函数会直接累加str指针.我该如何在执行_tcslen前判断str是否是空?


...全文
92 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
ssfan 2005-05-30
  • 打赏
  • 举报
回复
干嘛不手动判断, if(str=="")...我很菜!
dongfa 2005-05-30
  • 打赏
  • 举报
回复
IsBadReadPtr
IsBadWritePtr

3,248

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧