【发布时间】:2020-07-12 11:23:48
【问题描述】:
我需要将" "(空格)替换为", "(逗号和空格)。
我有接收字符串为 char* 的函数,替换所有这些字符后会在屏幕上打印字符串。
char* PrintComma(char* Text) {
for (int i = 0; i < strlen(Text); i++) {
if (Text[i] == ' ') {
Text[i] = ',';
}
}
return Text;
}
这会将" " 替换为",",但我需要", "。我不允许使用第二个字符串或数组来保存临时数据。我只能使用这一个字符串。
例子:
Input => "Hello world my name is"
Output => "Hello, world, my, name, is"
【问题讨论】:
-
第1步:计算空格。这是否足够成功,还是您需要更多?
-
第 2 步:从字符串的末尾向后工作。注意:
Text指向的缓冲区必须足够大以容纳较长的结果字符串。