c++ - 如何检查给定的 int 是否存在于数组中?

标签 c++ arrays

例如,我有这个数组:

int myArray[] = { 3, 6, 8, 33 };

如何检查给定的变量 x 是否在其中?

我必须编写自己的函数并循环数组,还是在现代 c++ 中相当于 PHP 中的 in_array

最佳答案

您可以使用 std::find为此:

#include <algorithm> // for std::find
#include <iterator> // for std::begin, std::end

int main () 
{
  int a[] = {3, 6, 8, 33};
  int x = 8;
  bool exists = std::find(std::begin(a), std::end(a), x) != std::end(a);
}

std::find 返回第一次出现 x 的迭代器,或者返回一个迭代器,如果 x 未找到。

关于c++ - 如何检查给定的 int 是否存在于数组中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19299508/

相关文章:

c++ - 为多个项目和配置有效地使用 Visual Studio 项目属性

c++ - && 对 C++ 中的参数类型意味着什么?

python - 索引 0 超出了大小为 0 的轴 0 的范围

javascript - 使用函数参数进行对象解构

c - 为什么使用不同的循环会得到不同的输出?

javascript - 控制台一次仅打印一个字母,而不是完整的单词

c++ - 在成员函数中指向字符数组会不会有问题?

c++ - 我将如何获取代码以检测多个期间(又称AKA)。

c++ - 为什么 Boost VF2 子图同构给出了错误的答案?

javascript - 通过数字索引创建数组而不插入数组