📜  C++ |其他C++ |问题8(1)

📅  最后修改于: 2023-12-03 14:59:47.951000             🧑  作者: Mango

C++ | 其他C++ | 问题8

问题描述

在C++中,有关于指针和数组的两种不同的语法来访问数组元素。以下两种方式是否等效?

  1. *(array + i)
  2. array[i]
解决方案

这两种方式是等效的,都可以用来访问数组元素。

在第1种方式中,array + i将指针移动到第i个元素的位置。*(array + i)则表示从该位置获取值。

在第2种方式中,array[i]*(array + i)等价。它们都表示获取第i个元素的值。

以下是一个演示这两种访问数组元素方式等效的示例程序:

#include <iostream>
using namespace std;

int main() {
    int array[] = {1, 2, 3, 4, 5};

    // 访问数组元素的两种方式
    cout << *(array + 3) << endl;   // 输出4
    cout << array[3] << endl;       // 输出4

    return 0;
}
总结

C++中有关于指针和数组的两种不同的语法来访问数组元素。以上显示这两种方式等效。程序员可以选择任何一种语法来访问数组元素,它们都将得到相同的结果。