我对C++很陌生,目前正在编写一个与此问题无关的caesar cipher程序,但我无法弄清楚为什么我得到这段代码的错误。C++检查for循环中的字符串是否相等
char alph[] = "ABCDEFGHIJKLMANOPQRSTUVWXYZ";
string key;
cout << "Enter your key: \n";
getline(cin, key);
int numKey;
for(int j = 0; j<= 26;j++){
if (alph[j] == key){
numKey = j;
}
}
还有更多的多数民众赞成在我的主要功能不是必要的,但我得到一个错误与if(ALPH [J] == k)的声明中说:“错误:无效的操作数为二进制表达式(‘廉政’和'string'(又名'basic_string,allocator>'))“如果有人能告诉我我在做什么错误,将不胜感激。提前致谢。
字母表中的26个字符,由于<=',程序中的27个循环。这不是致命的,因为终止零字节,但很可能不是你想要的。 – DevSolar
我知道这是一个没有真正应用的编程练习。但看到人们假设一个26字母的拉丁字母足以支持*任何事情*使我的皮肤爬行... ;-) – DevSolar
这让我感到困惑,为什么你认为你可以决定什么是,什么时候不需要知道问题是什么? –