hi e
giả sử kích thước của 1 int là 4 byte.
khi e khai báo, int x[3],
e sẽ được cấp 3 ô nhớ, mỗi ô nhớ có kích thước 4 byte, ví dụ địa chỉ của các ô nhớ lần lượt là: 20, 24, 28
khi e gọi, b=(int*)calloc(3, sizeof(int)
e cũng sẽ được cấp 3 ô nhớ, mỗi ô nhớ có kích thước 4 byte, giả sử địa chỉ của các ô nhớ là: 100, 104, 108
operator “[]”, là một phương tiện để e có thể truy cập tới 1 ô nhớ nào đó, và opeartor này cho phép gọi trên một mảng hoặc 1 con trỏ.
khi e gọi x[0], có nghĩa là e đang truy cập tới ô 20
tương tự,
x[1] --> ô 24
x[2] --> ô 28
khi e gọi b[0], có nghĩa là e đang truy cập tới ô 100
tương tự,
b[1] --> ô 104
b[2] --> ô 108
và nếu e gọi: b[0] = x[0], có nghĩa là copy giá trị của ô 20, rồi paste qua ô 100.