【发布时间】:2013-09-24 07:10:01
【问题描述】:
我有两个单独的单词数组,例如:
array1 = word1, word2, word3
array2 = word4, word5, word6
我正在尝试根据用户输入(将是 2 个单词)匹配两个数组。 例如,你输入“word1 word6”,程序给你 x。您输入“word3 word4”,程序会为您提供 y。每个数组中不需要/不应该匹配(因此输入“word1 word3”不应该给出错误以外的任何内容)。
现在,我正在考虑使用string::find 来查找输入字符串中每个数组的内容。然而,在那之后,我被困在如何获取这些结果(如果有的话)并将它们相互匹配。
例如,我会input.find(contents of array1),如果发现了什么,就取那个array1[x],并查看通过同一输入中的单独行找到的与array2[x] 的组合是否匹配第三个可能组合列表。如果是这样,我会根据它是哪个组合来拆分响应。
我知道如果我只有一个可能匹配的列表并在输入字符串中找到 that 会更容易。但我想将这两组单词分开,因为代码会更灵活(而且我会通过这种方式学到更多)。
希望有人能给我一些关于如何进行的提示吗?
【问题讨论】:
-
当你说“例如,你输入“word1 word6”,程序给你x”时,我不明白'x'是什么意思。下一句同样的问题:)
-
您的意思是 WORD 是无符号短字吗?
-
抱歉,我的意思是一般结果 - 在这种情况下,我可能会根据用户输入的两个单词的集合来执行一些函数。
-
一开始你写的是“数组”,然后你写的是创建一个临时的“列表”,最后你写的是“两组词”。请注意,这是 3 种不同类型的容器。
-
我实际上对数组和向量之间的区别有点困惑。我所需要的只是单词的“列表”(字典定义,而不是 C++ 类型:P)。我会为此使用向量,但启发我进行此“练习”的朋友提到了数组,所以我认为它们也可以使用。真的很抱歉造成混乱,因为我说我是新手,所以我可能会毫无意义地使用 C++ 术语!
标签: c++ arrays string set containers