我认为我应该编写代码的方式就像这样,如果我想用'GONE'替换一个单词
问题是:如何替换作为参数给出的单词并将其替换为通过stdin传递的txt文件中的单词GONE
// pseduocode
open the file
while not EOF
get a word from the file
if word == 'GONE' // or argv[1]
word = 'GONE'
end
如果我把它们放进去,我也会对多个论点感到困惑,假设。
./a.out hello bob bye < hello.txt
哪个会测试这个文件
Hello world and bob
I hope it's going good
but i gotta go so bye
和输出
GONE world and GONE
I hope its going good
but i gotta go so GONE
我对如何在C中解决这个问题感到困惑。我认为我的pseduocode是正确的。
感谢。
答案 0 :(得分:-1)
我可以给你一些想法,但事情必须是你自己。将文本存储在separte字符串中:
char sentence[] = "Hello world and bob I hope it's going \
good but i gotta go so bye";
const char *to_replace = "Hello";
const char *replacement = "GONE
char *pos = strstr(sentence, to_replace);
while (pos != NULL) {
//Replace the word here as you now positions
if ( strstr(sentence, to_replace) ){
pos = strstr(sentence, to_replace);
}else{
pos = 0;
}
}
现在打印缓冲区替换缓冲区