Mảng arr[i] diễn giải là *(arr+i). Ở đây, arr biểu thị địa chỉ phần tử đầu tiên hoặc chỉ số 0. Vì vậy *(arr+i) nghĩa là phần tử cách i đơn vị từ phần tử đầu. Do đó chỉ số mảng bắt đầu từ 0 vì ban đầu i=0 nghĩa là phần tử đầu tiên.
Chương trình minh họa C++:
Ví dụ
#include <iostream>
using namespace std;
int main() {
int arr[] = {5,8,9,3,5};
int i;
for(i = 0; i<5; i++)
cout<< arr[i] <<" ";
cout<<"\n";
for(i = 0; i<5; i++)
cout<< *(arr + i) <<" ";
return 0;
}Kết quả
Đầu ra chương trình:
5 8 9 3 5 5 8 9 3 5
Hiểu chương trình:
Mảng arr[] chứa 5 phần tử. Hiển thị bằng vòng for dùng arr[i] và *(arr + i). Kết quả giống nhau. Đoạn mã:
int arr[] = {5,8,9,3,5};
int i;
for(i = 0; i<5; i++) cout<< arr[i] <<" ";
cout<<"\n";
for(i = 0; i<5; i++) cout<< *(arr + i) <<" ";