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

คำอธิบายแนวคิดพอยน์เตอร์ (Pointers) ในภาษา C


พอยน์เตอร์ (Pointer) คือตัวแปรที่จัดเก็บที่อยู่ของตัวแปรอีกตัวหนึ่ง

คุณสมบัติของพอยน์เตอร์

  • พอยน์เตอร์ประหยัดพื้นที่หน่วยความจำ

  • เวลาทำงานเร็วกว่า เพราะเข้าถึงตำแหน่งหน่วยความจำโดยตรง

  • เข้าถึงหน่วยความจำได้อย่างมีประสิทธิภาพ

  • จัดสรรและปล่อยหน่วยความจำแบบไดนามิก

  • ใช้ร่วมกับโครงสร้างข้อมูล (Data Structures)

ไวยากรณ์สำหรับพอยน์เตอร์:

pointer = &variable;

ตัวอย่าง

โปรแกรม C สำหรับพอยน์เตอร์:

#include <stdio.h>

int main() {
    int x = 40; // ประกาศตัวแปร
    int *p;     // ประกาศตัวแปรพอยน์เตอร์
    p = &x;     // จัดเก็บที่อยู่ของ x ในพอยน์เตอร์ p
    
    printf("address in variable p is:%d\n", p); // เข้าถึงที่อยู่
    printf("value in variable p is:%d\n", *p);  // เข้าถึงค่า
    return 0;
}

ผลลัพธ์

เมื่อรันโปรแกรม จะได้ผลลัพธ์ดังนี้:

Address in variable p is: 5ff678
Value in variable p is: 40

ตัวดำเนินการ * ทำหน้าที่ 2 อย่าง:

  • ประกาศพอยน์เตอร์

  • คืนค่าของตัวแปรที่อ้างอิง

ตัวดำเนินการ & ทำหน้าที่อย่างเดียว:

  • คืนที่อยู่ของตัวแปร