c-如何比较两个字符串并返回相同的字数



我正在用C编写代码,但我还没有找到一种有效的方法来进行比较,如果有人能帮助我,我将不胜感激。

示例:

W1:白墙大房子W2:房屋墙壁

返回:2

在思考如何解决问题时,将问题分解为几个步骤,您可以清楚地看到如何进行,以及这些步骤如何朝着解决方案的方向发展。对于这样的事情,通常的方法是

  • 复制每个字符串
  • 对于每个字符串,制作指向char*的指针数组
  • 指向复制的字符串,然后
  • 解析为"单词"(将''放在所有非单词字符上
  • 对字符串数组运行qsort

然后,有了两个排序的指向单词的指针数组,就可以使用strcmp编写一个循环来检查单词的相等性。我建议使用strcmp,因为(因为数组是排序的)检查两个数组中的一个或另一个是否缺少单词很简单。

复制/解析/排序部分自然是一个函数,给定一个字符串并返回指针数组。调用方应该释放它(以及它所指向的截断字符串)。

相关内容

  • 没有找到相关文章

最新更新