สรุปเนื้อหาโครงสร้างข้อมูลแบบเซ็ต
เป็นโครงสร้างข้อมูลที่ข้อมูลแต่ละตัวไม่มีความสัมพันธ์กัน ในภาษาซีจะไม่มีประเภทข้อมูลแบบเซ็ตนี้เหมือนกับในภาษาปาสคาล แต่สามารถใช้หลักการของการดำเนินงานแบบเซ็ตมาใช้ได้
ตัวดำเนินการของเซ็ต (Set operators)
ประกอบด้วย
- Set intersection
- Set union
- Set difference เป็นต้น
โครงสร้างข้อมูลแบบสตริง
สตริง (String) หรือสตริงของอักขระ(Character String) เป็นข้อมูลที่ประกอบไปด้วย ตัวอักษร ตัวเลขหรือเครื่องหมายเรียงติดต่อกันไป รวมทั้งช่องว่าง
ความยาวของสตริงจะถูกกำหนดโดยขนาดของสตริง การกำหนดขนาดของสตริงนั้นต้องจองเนื้อที่ในหน่อยความจำให้กับ \0 ด้วย
สตริงกับอะเรย์
สตริง คือ อะเรย์ของอักขระ
การกำหนดสตริง
การกำหนดสตริงทำได้หลายแบบ คือ
1. การกำหนดเป็นสตริงที่มีค่าคงตัว สามารถกำหนดได้ทั้งนอกและในฟังก์ชัน เมื่อกำหนดไว้นอกฟังก์ชัน ชื่อค่าคงตัวจะเป็นพอยเตอร์ชี้ไปยังหน่วยความจำที่เก็บสตริงนั้น เมื่อกำหนดไว้ในฟังก์ชัน จะเป็นพอยเตอร์ไปยังหน่อยความจำที่เวมันเองก็บตั
2. กำหนดโดยใช้ตัวแปรอะเรย์หรือพอยเตอร์
การกำหนดตัวแปร name เท่ากับเป็นการกำหนดะเรย์ ขนาด 31 ไบต์ และให้ตัวแปร name ชี้ไปที่ต้นอะเรย์
ในการกำหนดตัวแปร name กำหนดไว้ว่าชื่อจะองไม่ยาวเกิน 30 อักขระ หากผู้ใช้ป้อนไม่ถึง 30 อักขระ เครื่องจะทำการเติม null character ให้จนครบ 31 ช่อง แต่ถ้าผู้ใช้ป้อนเกินจะเกิดข้อผิดพลาดหลุดจากโปรแกรมน้ เพราะฉะนั้นจึงต้องกำหนดความยาวของสตริงให้เพียงพอ
ฟังก์ชัน gets( ) เป็นฟังก์ชันที่อ่านค่าจากแป้นพิมพ์มาเก็บไว้ในหน่วยความจำ ซึ่งก็คืออะเรย์ที่ตัวแปร name ชี้อยู่ รวมทั้งช่องว่าง จนกว่าผู้ใช้จะกด Enter จะเติม null character ให้
ถ้าหากมีสตริจำนวนมาก ก็ควรจะทำให้เป็นอะเรย์ของสตริง เพื่อทีจะเขียนโปรแกรมได้สะดวก การสร้างอะเรย์ของสตริง สามารถสร้างได้ทั้งแบบที่ให้ค่าเริ่มต้นและแบบที่กำหนดเป็นตัวแปร
การกำหนดตัวแปร country จะแตกต่างกับการกำหนดอะเรย์ เพราะเป็นการกำหนดตัวแปรพอยเตอร์ขึ้น 4 โดยที่ contry [0] จะชี้ที่ข้อมูลแรก contry [1] จะชี้ข้อมูลที่สอง contry [2] จะชี้ชี้ข้อมูลที่สาม และ contry [3] จะชี้ข้อมูลตัวสุดท้าย
ไม่มีความคิดเห็น:
แสดงความคิดเห็น