ความแตกต่างที่สำคัญระหว่างอาร์เรย์และโครงสร้างในภาษาซีมีดังนี้ -
| อาร์เรย์ | โครงสร้าง |
|---|---|
| อาร์เรย์เป็นเอนทิตีเดี่ยวที่แสดงรายการข้อมูลประเภทเดียวกัน | โครงสร้างเป็นเอนทิตีเดี่ยวที่แสดงถึงการรวบรวมรายการข้อมูลของประเภทข้อมูลต่างๆ |
| รายการแต่ละรายการในอาร์เรย์เรียกว่าองค์ประกอบ | รายการแต่ละรายการในโครงสร้างเรียกว่าสมาชิก |
| การประกาศอาร์เรย์สงวนพื้นที่หน่วยความจำเพียงพอสำหรับองค์ประกอบ | การกำหนดโครงสร้างสำรองพื้นที่หน่วยความจำเพียงพอสำหรับสมาชิก |
| ไม่มีคีย์เวิร์ดที่ใช้แทนอาร์เรย์ แต่เครื่องหมายปีกกา [] ที่นำหน้าชื่อตัวแปรบอกเราว่าเรากำลังจัดการกับอาร์เรย์ | โครงสร้างคีย์เวิร์ดบอกเราว่าเราสามารถจัดการกับโครงสร้างได้ |
| การกำหนดค่าเริ่มต้นขององค์ประกอบสามารถทำได้ในระหว่างการประกาศอาร์เรย์ | การเริ่มต้นของสมาชิกสามารถทำได้ระหว่างการกำหนดโครงสร้างเท่านั้น |
| องค์ประกอบของอาร์เรย์ถูกจัดเก็บไว้ในลำดับของตำแหน่งหน่วยความจำ | สมาชิกของโครงสร้างจะไม่ถูกจัดเก็บในลำดับของตำแหน่งหน่วยความจำ |
| องค์ประกอบอาร์เรย์เข้าถึงได้และตามด้วยวงเล็บปีกกา [] ซึ่งวางดัชนีไว้ | สมาชิกของโครงสร้างสามารถเข้าถึงได้โดยตัวดำเนินการจุด |
| รูปแบบทั่วไปคือชื่อตัวแปรชนิดข้อมูล [ขนาด]; | รูปแบบทั่วไปมีดังนี้ − struct <struct name>{
data_type structure member 1;
data_type structure member 2;
•
•
•
data_type structure member N;
} structure variable; |
ตัวอย่างเช่น int sum (100); | ตัวอย่างเช่น struct student{
char studname (25);
int rollno;
} stud1; |