Computer >> Máy Tính >  >> Lập trình >> lập trình C

Tại sao chỉ mục mảng C / C ++ bắt đầu từ 0?


Vì chỉ mục Mảng bắt đầu bằng 0, nên a [i] có thể được triển khai dưới dạng * (a + i).

Nếu chỉ mục Mảng bắt đầu bằng 1 thì a [i] sẽ được triển khai dưới dạng * (a + i-1), điều này sẽ tốn thời gian trong quá trình biên dịch và hiệu suất của chương trình cũng sẽ bị ảnh hưởng.

Vì vậy, tốt hơn là bắt đầu lập chỉ mục của mảng từ 0.

Một chương trình đơn giản của mảng được đưa ra -

Mã mẫu

int main() {
   int array[5] = {7, 7, 7, 6, 6};
   for (int i = 0; i < 5; i++)
      cout << *(array + i);
   return 0;
}

Đầu ra

7 7 7 6 6