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

Tại sao việc lập chỉ mục bắt đầu bằng 0 trong mảng C #?

Mảng là một con trỏ đến một địa chỉ trong bộ nhớ của chỉ mục. Chỉ mục này là phần tử đầu tiên của mảng. Ở đây, chỉ mục giống như một phần bù và khái niệm thậm chí trước cả khi ngôn ngữ C ra đời.

Giả sử các phần tử mảng của bạn bắt đầu từ 0Xff000 và có 5 phần tử như {35,23,67,88,90}. Do đó, mảng trong bộ nhớ của bạn sẽ giống như sau vì int được lưu trữ bằng 4 byte.

0Xff000 has 35
0Xff004 has 23
0Xff008 has 67
0Xff012 has 88
0Xff016 has 90

Điều đó có nghĩa là khi mảng được truy cập, hiệu số 0 sẽ là chỉ số 0.

Hãy để chúng tôi xem thêm khái niệm về không lập chỉ mục trong C # -

  • Nếu mảng trống, mảng không có phần tử nào và có độ dài bằng 0.
  • Nếu mảng có một phần tử trong chỉ mục 0 thì nó có độ dài 1.
  • Nếu mảng có hai phần tử trong chỉ mục 0 và 1 thì mảng có độ dài 2.
  • Nếu mảng có ba phần tử trong các chỉ mục 0, 1 và 2 thì nó có độ dài là 3.

Sau đây nói rằng một mảng trong C # bắt đầu bằng chỉ số 0 -

/* begin from index 0 */
for ( i = 0; i < 10; i++ ) {
   num[ i ] = i + 10;
}