请教关于 char *和AnsiString的转换
对于 AnsiString转换为char *,我知道2种方法,我想知道第二种方法会否没这么安全,因为缺乏了初始化,如果是安全的,我倾向于第二种,因为少了1行代码
(1)
AnsiString s="abcde";
char * buf = new char[s.Length()+1];
memset(buf,s.Length()+1);
strcpy(buf,s.c_str();
(2)
AnsiString str;
char *xx=new char[str.Length()+1];
memcpy(xx,str.c_str());
[解决办法]
安全是安全,不会有内存泄露,初始化后全0,不初始化也不影响赋值。
可以了,记得最后delete 就可以。