c++ stl string char* 向 string 转换的问题

请看下面代码

string AddString(const string& a,const string & b)
{
    return a + b;
}



int _tmain(int argc, _TCHAR* argv[])
{
    const char * szA = "Zhang";
    const char * szB = 0;
    string strRet = AddString(szA,szB);
    cout<<strRet<<endl;
    system("pause");
    return 0;
}

上面的代码当szB=0 时,调用时程序会崩溃。有时候在某些脚本语言传字符串当字符串为空时 这时传到c++时此时的char*指针就是为0的。就这样崩溃了。

有什么解决办法 避免这种问题呢?

posted @ 2015-08-08 11:27  瓜蛋  阅读(506)  评论(2编辑  收藏  举报