C++ 删除一个字符串中的指定字符
阅读原文时间:2023年07月08日阅读:3

Q:一个数字是以xxx,yyy,zzz的字符串形式存储的,将逗号消去并转化为整数输出

方法一:char数组,即定义时s1定义为 char s1[20]的形式;

//删除输入字符串中的逗号,并构建新串  
for(i=j=0;\*(s1+i)!='\\0';i++)  
    if(s1\[i\]!=',')  
        s1\[j++\]=s1\[i\];  
s1\[j\]='\\0';

//转化为整数
a=atoi(s1);

方法二:string类型,定义s1为 string s1;

while (s1.find(',') != -1) //find返回-1表示字符串中已经不存在特定字符
s1.erase(s1.find(','),1);//抹去查找到','位置处的一个元素,即查到一个','抹除一个',',第二个参数1不能省略,表示抹去的元素个数

a=stoi(s1);

转化为整数时,char数组要用atoi,而string类型要用stoi