บทความนี้สอนเขียนวิธีการลบค่าใน Array ภาษา C โดย Array ในภาษา C เป็นโครงสร้างข้อมูลแบบ static การลบค่าใน Array จะใช้เทคนิคการเลื่อนตำแหน่งข้อมูลเพื่อทับข้อมูลที่ต้องการลบ และขนาดของ Array จะไม่ถูกเปลี่ยนแปลง สามารถเขียนโปรแกรมได้ดังนี้
ตัวอย่าง วิธีการลบค่าใน Array ภาษา C
#include <stdio.h>
int main() {
int arr[] = {1, 2, 3, 4, 5};
int size = sizeof(arr) / sizeof(arr[0]);
int delete_index = 1;
for (int i = delete_index; i < size - 1; i++) {
arr[i] = arr[i + 1];
}
for (int i = 0; i < size - 1; i++) {
printf("%d ", arr[i]);
}
return 0;
}
ผลลัพธ์
1 3 4 5
จากตัวอย่างสร้าง Array ค่าเริ่มต้น {1, 2, 3, 4, 5} จากนั้นลบข้อมูลลำดับ (index) ที่ 1 คือหมายเลข 2 จึงทำการเลื่อนตำแหน่งข้อมูล เนื่องจาก Array ในภาษา C เป็นแบบ static ทำให้การลบ Array ของภาษา C นั้นค่าที่ถูกลบจะถูกแทนที่ด้วยค่าถัดไปใน Array เดียวกัน และขนาดของ Array จะไม่ถูกเปลี่ยนแปลง อีกทั้งค่าสุดท้ายของ Array จะซ้ำกัน