提问人:Karl Land 提问时间:2/28/2022 最后编辑:Karl Land 更新时间:2/28/2022 访问量:28
为什么这两个字符串不相等,我该如何使它们相等?
Why are these two strings not equal and how would I make it so they are?
问:
我试图弄清楚为什么在使用分配给 Dictionary[] 的键时能够在我的 Trie 中成功找到字符串,但是当我尝试创建相同值的完全不同的字符串时,我无法返回成功的搜索。当试图弄清楚为什么字符串不一样时,我创建了一小段代码来尝试解决问题。我使用 key1.compare(key) 来显示字符串不相等,而编译后的代码显示两个字符串看起来相同。我最好的猜测是,这与每个字符串都有不同的指针有关。解决此问题后的最终目标是最终能够根据字符输入创建字符串,并搜索包含字典的 Trie 数据结构,以查看我是否创建了一个单词。
当我搜索字典数组中的字符串时,我的 trie 有效(此数组用于加载 trie),但当我使用原始数组之外的任何其他字符串时不起作用。
代码复制和粘贴:
string key = dictionary[1];
cout << head->search(key) << " ";
string key1 = "the";
cout << head->search(key1) << " ";
cout<< endl<<key<<endl;
cout<< key1<<endl;
if(key1.compare(key)!=1){
cout<<"not equal"<<endl;
}
编译器: 1 0 这 这 不相等
答: 暂无答案
评论