พื้นฐานการเขียนโปรแกรม:พอยน์เตอร์

จาก Theory Wiki
ไปยังการนำทาง ไปยังการค้นหา

พอยน์เตอร์ เป็นตัวแปรชนิดนึงในภาษาC ซึ่งตัวแปร Pointer นี้ จะเก็บข้อมูล address ของ memory ไว้ ซึ่งโดยปกติแล้ว ตัวแปร Pointer จะมีขนาด 4 Bytes (สำหรับ CPU 32 bits)

การ declare ตัวแปร pointer

การ declare ตัวแปร pointer

ชนิดของข้อมูล *ชื่อตัวแปรpointer;

เช่น

int *pIndex;

เป็นการอ้างตัวแปรpIndexให้เป็นตัวแปรpointerที่ชี้ไปที่ข้อมูลชนิด int

การกำหนดค่าตัวแปรpointer

การกำหนดค่าตำแหน่งaddress ให้กับตัวแปรpointer

ชื่อตัวแปรpointer=ตำแหน่งaddress;

เช่น

pIndex=null;

เป็นการให้ค่า null ให้ตัวแปร pIndex ซึ่งหมายความว่า pIndex ไม่ได้ชี้ไปที่ข้อมูลตัวไหนใน memory เลย

การอ้างค่าตำแหน่งaddressของตัวแปร

การอ้างค่าตำแหน่งaddress ของตัวแปรทำได้โดยใส่

ชื่อตัวแปรpointer=&ตำแหน่งaddress;

เช่น

pIndex=&i;

เป็นการกำหนดค่าในตัวแปรpIndexให้เท่ากับ memory address ของตัวแปร i ซึ่งสามารถนำไปใช้งานได้ในภายหลัง

การอ้างค่าที่ถูกอ้างอิงโดยตัวแปรPointer

การอ้างค่าที่ถูกอ้างอิงโดยตัวแปรPointerทำได้โดยใส่ * หน้าชื่อตัวแปรนั้น

*ชื่อตัวแปรpointer

เช่น

*pIndex

จะให้ค่าเท่ากับค่าที่เก็บอยู่ใน memory ที่ address เท่ากับค่าใน ตัวแปร pIndex