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的。就这样崩溃了。

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

原文地址:https://www.cnblogs.com/zhangdongsheng/p/4712800.html