我知道我可以通过str.c_str()
, 来做到这一点,但我不想要一个字符常量。我想要一个字符,以便我可以进行一些修改。将字符串转换为字符
char* removeDup(char *s)
{
int len = strlen(s);
int p,q, idx = -1;
for(p = 0; p< len; p++)
{
char temp = s[p];
bool flag = true;
for(q=0;q<p;q++)
{
if(s[q] == temp)
{
flag = false;
break;
}
}
if(flag == true)
{
s[++idx] = temp;
}
}
s[++idx] = '\0';
return s;
}
如果我调用这个函数如下,我得到错误;
string s = "abcde";
removeDuplicate(s.c_str());
我需要转换这个s
成char
而不是const char
。
我的建议是在'而不是string'并跳到'字符传递*'完全 – Default 2012-01-09 13:25:05