C++中如何将一个String类对象里的字符串完整赋值给一个字符型的数组?
2个回答
展开全部
string s="dsafjsakfas";
int iLen=s.length();//得到字符串的长度
char *s1=new char[iLen+1];
for(int i=0;i<iLen;i++)
{
s1[i]=string[i];//在string类中" [ i] "是重载了的,可以像字符数组一样直接访问下标为i 的字符
//知道这点你应该就知道怎样做了.
}
si[i]='\0';
大致就这样,自己写的,没有复制粘贴
int iLen=s.length();//得到字符串的长度
char *s1=new char[iLen+1];
for(int i=0;i<iLen;i++)
{
s1[i]=string[i];//在string类中" [ i] "是重载了的,可以像字符数组一样直接访问下标为i 的字符
//知道这点你应该就知道怎样做了.
}
si[i]='\0';
大致就这样,自己写的,没有复制粘贴
追问
如果是在C++builder里面运用,不允许由string类对象向字符数组赋值,那该怎么办?
展开全部
#include<string>
#include<iostream>
using namespace std;
void main()
{
char des[20];
string str="hello world";
strcpy(des,str.begin());
cout<<des<<endl;
}
#include<iostream>
using namespace std;
void main()
{
char des[20];
string str="hello world";
strcpy(des,str.begin());
cout<<des<<endl;
}
追问
哦,那我想在c++builder里面实现该字符串传递,没有string的成员函数begin(),那怎么办呢?
追答
其实,你都不用问,直接打开头文件或查msdn,看下有什么函数直接拿来用就是拉
其实函数这些东西谁会记得那么多,都是临时查头文件或查msdn
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询