กำหนดโครงสร้าง ความแตกต่างระหว่างโครงสร้างและอาร์เรย์คืออะไร?


ตอบ 1:

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

สร้าง 4 อาร์เรย์ที่แตกต่างกัน - rollno [n], ชื่อ [n], เพศ [n], gpa [n] โดยที่แต่ละ i สำหรับ (0 <= i

วิธีต่อไปคือการสร้างโครงสร้าง คุณสร้างโครงสร้างเช่นนี้:

นักเรียน struct {int rollno; ชื่อถ่าน [100]; เพศสัมพันธ์; เกรดเฉลี่ยลอยตัว; }; struct student student_list [n];

วิธีนี้คุณสามารถเก็บรายละเอียดทั้งหมดของนักเรียนในบล็อกข้อมูลเดียว student_list [i] เก็บข้อมูลทั้งหมดเกี่ยวกับนักเรียนคนหนึ่ง

โครงสร้างให้ระดับที่เป็นนามธรรม ลองนึกภาพคุณกำลังเขียนฟังก์ชั่นเพื่อประมวลผลรายละเอียดเกี่ยวกับนักเรียนคนหนึ่ง ด้วยวิธีแรกฟังก์ชั่นจะมีลักษณะเช่นนี้:

int process_student (int rollno, ถ่าน * ชื่อ, เพศ char, ลอย GPA) {// ทำอะไรบางอย่าง}

หากคุณใช้โครงสร้างคุณสามารถส่งผ่านข้อมูลได้อย่างง่ายดาย -

int process_student (รายการนักเรียน struct) {// ทำอะไรกับนักเรียน}

คุณสามารถไปยังเพื่อกำหนดวิธีการที่ใช้โครงสร้างและทำการประมวลผลบางอย่างกับมัน - จำลองพฤติกรรมของวัตถุที่มุ่งเน้น


ตอบ 2:

โครงสร้างเป็นชนิดข้อมูลที่ผู้ใช้กำหนด

อาร์เรย์คือชุดขององค์ประกอบหลายอย่างของชนิดข้อมูลเดียวกัน

เมื่อคุณต้องการสร้างชนิดข้อมูลคุณใช้โครงสร้างวิธีการ มันจะดีกว่าที่จะใช้ struct เมื่อเทียบกับอาร์เรย์

ตัวอย่างเช่นพิจารณาการนำเสนอต่อไปนี้ของชุด 50 คะแนน 2D เมื่อใช้อาร์เรย์คุณจะได้คำจำกัดความต่อไปนี้:

int x [50], y [50];

คุณยังสามารถใช้:

int [50] [2];

อย่างไรก็ตามการใช้โครงสร้างให้การแสดงที่ดีที่สุด

[รหัส]

จุดโครงสร้าง {

คุณ X, Y คุณ;

};

struct Point points [50];

[/รหัส]