Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

Pointer vs Array ใน C


Pointers และ array ใน C มักถูก treat เหมือนกัน แต่มีความต่างบางอย่าง:

&operator:

  • &pointer = คืน address ของ pointer

  • &array = คืน address ของ first element

sizeof operator:

  • sizeof(array) = คืน total memory ของ all elements

  • sizeof(pointer) = คืน memory ของ pointer variable เอง

Array variable ไม่สามารถ re-assign ค่าได้ แต่ pointer variable ทำได้

Declaration:

int a[]; //array Int *p; //pointer

สมมติมี integer pointer variable:

int *i;

ผลของ assignments:

a = &i; //illegal assignment. a variable can not be updated or modified. p = &i; //legal assignment.