【发布时间】:2021-10-16 21:05:36
【问题描述】:
我需要将数组中的字符串中的一个字符与另一个字符串进行比较。这是我的问题的一个有效但简单的版本:
#include <iostream>
using namespace std;
int main() {
string a_ray[1] = {"asd"};
if (a_ray[0][0] == "a") {
bool a;
}
return 0;
}
错误信息:ISO C++ forbids comparison between pointer and integer [-fpermissive]|
这是什么原因造成的?我怎样才能以正确的方式做我想做的事? 提前谢谢!
【问题讨论】:
-
您是在比较字符还是字符串?您的问题标题和正文不同。在您的示例代码中,
a_ray[0][0]是char,"a"是const char[2]。如果您尝试比较单个字符,Tanveer 的答案是正确的。 -
"a"和'a'是两个不同的东西。 -
ooooooooohhhhh 明白了!!!!!
标签: c++ arrays string comparison-operators