C++ 中如何string 转char数组

我想做一个类比如说stringa="123455555,123112313,141232313";然后以,为分割分别加入到char数组里。还有我如果我想删除char[1]... 我想做一个类 比如说 string a = "123455555,123112313,141232313";
然后以 , 为分割分别加入到char数组里。
还有 我如果我想删除 char[1]的话 直接 char[1] = ""; 就可以了么 自学C++ 有些不太懂。
展开
 我来答
wuchenyong119
推荐于2016-03-07 · TA获得超过265个赞
知道小有建树答主
回答量:194
采纳率:0%
帮助的人:170万
展开全部
首先char不能做变量名

用string *a="123455555,123112313,141232313";
char *p,ch[100];
p=a;
for(int i=0;*p!='\0';i++)
{
ch[i]=*p
p++;
}
ch[i]='\0';//记得补上
想删除ch[1],你的方法不用要移位呀
for(i=1;ch[i+1]!='\0';i++)
{
ch[i]=ch[i+1];
}
ch[i]='\0';//记得补上
百度网友a70ce28
2012-08-03 · TA获得超过992个赞
知道小有建树答主
回答量:619
采纳率:0%
帮助的人:565万
展开全部
string有一个函数c_str(),将字符串以C字符数组的形式返回
但是想要删除第二个字符的话,你只需要把字符数组除了第二个字符以后的每个字符向前移动一位就好,就是写一个循环就好了
for(int i=1;i<a.size();++i)
a[i]=a[i+1];
//删除a[1]字符
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
china_air_it
2012-08-03 · TA获得超过406个赞
知道小有建树答主
回答量:190
采纳率:0%
帮助的人:114万
展开全部
string的对象也可以像数组那么访问,例如:
string str;
str = "abc";
cout<<str[0]<<endl; 也可以像数组这样访问。
所以你可以对你的对象进行遍历,当碰到逗号的话,就重新申请一个数组,然后把后面的字符存储到新的数组里面。

你可以再百度HI联系我,咱们探讨这个问题,一起制作也可以。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hj1107402232
2012-08-03
知道答主
回答量:11
采纳率:0%
帮助的人:6.1万
展开全部
#include<iostream>
#include<vector>
#include<string>
using namespace std;
void main()
{
vector<string>svec;
string str;
while(cin>>str)
svec.push_back(str);
size_t it=0;
char **prr=new char*[svec.size()];
for(vector<string>::iterator ix=svec.begin();ix!=svec.end();ix++,it++)
{
char *p=new char[(*ix).size()+1];
strcpy(p,(*ix).c_str());
prr[it]=p;
}
for(vector<string>::iterator j=svec.begin();j!=svec.end();j++)
{
cout<<*j<<endl;
}
for(size_t k=0;k!=svec.size();k++)
{
cout<<prr[k]<<endl;
}
for(size_t t=0;t!=svec.size();t++)
delete []prr[t];
delete []prr;
}
这个程序动态创建一个数组,把string变为char
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
519613367
2012-08-03 · 超过16用户采纳过TA的回答
知道答主
回答量:117
采纳率:0%
帮助的人:54.2万
展开全部
前面可以用一个循环加到char中,
后面嘛用char[1]=“\0”应该可以
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式