达不溜797 2023-04-05 14:01 采纳率: 33.3%
浏览 20
已结题

C语言,字符串的替换问题

在主函数中输入一个字符串,编写函数将其中的所有“are”转换为“be”,在主函数中输出转换结果

  • 写回答

1条回答 默认 最新

  • 社区专家-Monster-XH 2023-04-05 14:07
    关注

    img

    #include <iostream>
    #include <string>
    
    void replaceAll(std::string& str, const std::string& from, const std::string& to) {
        size_t start_pos = 0;
        while((start_pos = str.find(from, start_pos)) != std::string::npos) {
            str.replace(start_pos, from.length(), to);
            start_pos += to.length();
        }
    }
    
    int main() {
        std::string input_str;
        std::cout << "请输入一个字符串: ";
        std::getline(std::cin, input_str);
    
        replaceAll(input_str, "are", "be");
    
        std::cout << "替换后的结果: " << input_str << std::endl;
    
        return 0;
    }
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 4月13日
  • 已采纳回答 4月5日
  • 创建了问题 4月5日

悬赏问题

  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分