
C++ string 转 char[] 字节长度问题
string转char[],如何保证char[]有足够长度stringaa="AAAAAAAAA";charbb[8];strcpy(bb,aa.c_str());如何保...
string 转 char[] ,
如何保证char[] 有足够长度
string aa="AAAAAAAAA";
char bb[8];
strcpy(bb,aa.c_str());
如何保证 这里的bb 长度 大于 strlen(aa)
int length=strlen(aa);
char bb[length] 是错误的?该怎么做 展开
如何保证char[] 有足够长度
string aa="AAAAAAAAA";
char bb[8];
strcpy(bb,aa.c_str());
如何保证 这里的bb 长度 大于 strlen(aa)
int length=strlen(aa);
char bb[length] 是错误的?该怎么做 展开
3个回答
展开全部
int len=aa.length();
char* bb=new char[len+1];
strcpy_s(bb,len+1,aa.c_str());
......
用完后
delete [] bb;
char* bb=new char[len+1];
strcpy_s(bb,len+1,aa.c_str());
......
用完后
delete [] bb;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
变长的数组应该这样定义:
int length=strlen(aa);
char *bb;
bb=new char[length];
int length=strlen(aa);
char *bb;
bb=new char[length];
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
std::string str = "you string";
char* c_str = new char[str.length() + 1]; //注意+1 还有个'\0' 啊
memset(c_str, 0, str.length() + 1);
memcpy(c_str, &str[0], str.length());
char* c_str = new char[str.length() + 1]; //注意+1 还有个'\0' 啊
memset(c_str, 0, str.length() + 1);
memcpy(c_str, &str[0], str.length());
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询