假设你有一个指向数组中的int的指针。这是找出指针指向哪个数组的哪个项目的最佳方法?从C++数组元素的指针获取索引的最快方法是什么?
int nmbr = pointer - &array[0];
cout<<"Item number "<<nmbr+1;
如果指针指向第6项,是否总是打印“项号6”?这容易出错吗?有没有更快的方法来做到这一点?迭代数组将无法工作,因为可能存在重复值,但这是否始终有效?在这种情况下,我们假设数组从第0项开始到第x项。是否有这样一种情况,其中一个数组的项目不存储在一个连续的行(如果该数组初始化为int array[x];
)?
更通用的:'COUT <<的std ::距离(数组,指针)+ 1;' – PaulMcKenzie
@PaulMcKenzie'std :: begin(array)',如果你想要它是通用的:) – BoBTFish