วันอาทิตย์ที่ 4 เมษายน พ.ศ. 2553

Pointer to Structures

การใช้ pointer ชี้ไปที่ข้อมูลชนิด structure เป็นที่นิยมมาก โดยเราจะใช้ตัวดำเนินการ -> (arrow operator) ในการอ้างถึงฟิลด์ต่างๆ เราลองมาพิจารณาโครงสร้างชนิดข้อมูลนี้กันดูคับ

struct database {

     int key;

     int big_array[25];

}my_data;

เป็นการประกาศข้อมูลชนิดโครงสร้างโดยใช้ชื่อ database แล้วก็กำหนดให้ my_data เป็นตัวแปรชนิดนี้ แล้วก็จะประกาศ pointer ชื่อ my_pointer ให้เป็นตัวแปร pointer ชนิดโครงสร้างนี้

struct database *my_pointer;

เราสามารถกำหนดให้ pointer ชื่อ my_pointer ชื่อไปยังตัวแปร my_data ได้ดังนี้

my_pointer = &my_data;

ต่อจากนี้เราก็จะสามารถอ้างถึงฟิลด์ต่างๆใน my_data เช่น my_data.key โดยใช้ตัวดำเนินการ ->

my_pointer -> key = 5;   // ใช้เช่นเดียวกับ my_data.key

ไม่มีความคิดเห็น:

แสดงความคิดเห็น