题目描述
代码
C++
定义新的字符串s
遍历字符串str
遇见空格添加"%20"
遇见字符直接添加
然后拷贝s至str
class Solution {
public:
void replaceSpace(char *str,int length) {
string res;//定义新的字符串s
string s = str;
for(char c : s)//遍历字符串str
{
if(c == ' ') res+="%20";//遇见空格添加"%20"
else res+=c;//遇见字符直接添加
}
strcpy(str,res.c_str());//然后拷贝s至str
}
};
为什么使用 :strcpy(str,res.c_str())
strcpy是C语言的库函数
C语言没有string这个类
res是string类型
所以要使用res.c_str()
将string将其转换为char类型,然后使用strcpy