我需要使用指针输入一个字符串,用“ - ”(短划线符号)替换空格。
输入应如下所示:
天空是蓝色的
输出:
在天空-是蓝色
编译编码和开始工作时遇到问题。
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
char result;
int main()
{
char string[100], *space;
{
printf("Enter a string here: \n"); //Enter a string in command prompt
gets(string); //scans it and places it into a string
space = string;
printf("%s\n", space);
result = space.Replace(" ", "-");
}
getchar();
}
答案 0 :(得分:2)
在C和C ++中,char
s或char*
没有成员函数。相反,你在C ++中使用std::replace()
:
std::replace(string, string + strlen(string), ' ', '-');
根据以下评论:如果您无法使用std::replace()
,则此处的代码具有相同的效果:
while (*space == ' '? (*space++ = '-'): *space++);
答案 1 :(得分:0)
#include <stdio.h>
#include <conio.h>
#include <string.h>
int main()
{
char string[100], *space;
{
printf("Enter a string here: \n"); //Enter a string in command prompt
gets(string); //scans it and places it into a string
space = string;
while (*space == ' '? (*space = '-'): *space++);
printf("%s\n", space);
}
getchar();
}
你做了什么,但它仍然不起作用。它确实编译了