วันอังคารที่ 7 กรกฎาคม พ.ศ. 2552

DTS 03-1-07-2552

pointer

พอยน์เตอร์ (pointer) เป็นตัว แปรที่ใช้เก็บตำแหน่ง (แทนที่จะเก็บค่า) ของข้อมูล เช่น ตัวแปรหรือสมาชิกของอาร์เรย์เราใช้พอยเตอร์บ่อย ๆ ใน ภาษาซี เนื่องจากมันมีประโยชน์มากมาย เช่น เราสามารถใช้พอยน์เตอร์ในการ ส่งข้อมูลไปมาระหว่างฟังก์ชันกับจุดที่เรียกใช้ฟังก์ชัน ถ้ากล่าวให้เจาะจง ลงไปก็คือ พอยน์เตอร์ ทำให้ฟังก์ชันสามารถส่งค่ากลับคืนมาได้ หลายค่า โดยผ่านอาร์กิวเมนต์ของฟังก์ชันยิ่งไปกว่านั้น เรายังใช้พอยน์เตอร์ในการเรียกใช้ฟังก์ชันที่ถูกส่งมาเป็นอาร์กิวเมนต์ของ อีก ฟังก์ชันหนึ่งนั่น คือ เราสามารถส่งฟังก์ชันหนึ่ง เป็นอาร์กิวเมนต์ให้อีก ฟังก์ชันหนึ่งได้


การกำหนดตัวแปร Pointer
การกำหนดตัวแปร Pointer จะคล้ายกับการกำหนดตัวแปรชนิดต่างๆ เพียงแต่ต้องมีเครื่องหมาย * หน้าชื่อตัวแปร ตัวอย่างเช่น int *pt;ในที่นี้กำหนดให้ pt เป็นตัวแปร Pointer ซึ่งเก็บAddress
ของตัวแปรชนิดตัวเลขจำนวนเต็มในเรื่อง Pointer มีเครื่องหมาย 2 ชนิด คือ * และ & เครื่องหมาย * จะให้ค่า ของข้อมูล ซึ่งเก็บอยู่ใน Address โดย Address นี้เก็บ อยู่ในตัวแปร Pointer ซึ่งอยู่หลังเครื่องหมาย * สำหรับเครื่องหมาย & จะให้ค่า Address ของตัวแปรซึ่งอยูหลังเครื่องหมาย &


พอยน์เตอร์และอาร์เรย์
พอยเตอร์สามารถกำหนดให้เป็นอารฺเรย์ได้ โดยในอาร์เรย์จะมีตัวแปร พอยเตอร์เหมือนตัวแปรอาเรย์ทั่วไป อาเรย์พอยเตอร์จะเก็บแอดเดรสของตัวแปรตามชนิดข้อมูลของตัวแปร ในการกำหนดอาเรย์ของ พอยเตอร์มีรูปแบบดังนี้

data type *pointer name[size];


พอยน์เตอร์ของพอยเตอร์
ตัวแปรพอยน์เตอร์อาจใช้เก็บค่าแอดเดรสของตัว แปรพอยเตอร์อื่น ซึ่งเก็บค่าแอดเดรสของตัวแปรหรือพอยเตอร์ตัวที่ 1 ชี้ไป แอดเดรสของพอยเตอร์ตัวที่ 2 ซึ่งพอยเตอร์ตัวที่ 2 ชี้ไปแอดเดรสตัวแปรดังรูป


พอยเตอร์ >>> พอยเตอร์ >>> ตัวแปร

ในการกำหนดพอยเตอร์ของพอยน์เตอร์จะต้องเพิ่มเครื่อหมาย * อีก 1 ตัวหน้าพอยเตอร์เช่น int **pt;




Set

เป็นโครงสร้างที่ข้อมูลแต่ละตัวไม่มีความสัมพันธ์กันเลย ตัวดำเนินการของเซ็ต ประกอบด้วย

1.set intersection
2.set union
3.set difference

String

เป็นข้อมูลที่ประกอบด้วย ตัวอักษร ตัวเลข หรือเครื่องหมายที่เรียงติดต่อกันความยาวของสตริงจะถูกกำหนดโดยขนาดของสตริง ในการจองเนื้อที่นั้น ต้องทำการจองเนื้อที่ให้กับ \0 ด้วย



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

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