【发布时间】:2020-10-08 08:41:45
【问题描述】:
我正在解决一个问题,需要找到最大字符(按字母顺序或我们可以根据 ASCII 值说),发现 size_t 数据类型不能用于从算法头文件中定义的 max 函数返回我找到了指向整数的指针。
下面是我有疑问的一段代码:
int v[] = { 'a', 'c', 'k', 'd', 'e', 'f', 'h' };
int* i1;
i1 = std::max_element(v, v + 4);
谁能解释一下为什么?在此先感谢:-)
【问题讨论】:
-
max_element将迭代器返回到给定范围内的元素,而不是索引。在数组的情况下,这些迭代器是指针。 -
不要试图通过猜测来找出 c++ 是如何工作的,而是参考一些参考资料:en.cppreference.com/w/cpp/algorithm/max_element
标签: c++ algorithm pointers stl size-t