Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

ส่ง Array ทั้งอาร์เรย์เป็น Argument ให้ Function ใน C

ส่ง array ทั้งชุดให้ฟังก์ชัน: ส่งชื่ออาร์เรย์ (base address) ฟังก์ชันรับเป็น parameter array

Syntax


// เรียก
display(array);
// รับ
void display(int arr[5]) { ... }
// หรือ
void display(int *arr) { ... }
// หรือ
void display(int arr[]) { ... }

โปรแกรมที่ 1: ส่ง array เข้า display()

#include <stdio.h>
void display(int a[5]) {
    for (int i = 0; i < 5; i++)
        printf("%d ", a[i]);
}
main() {
    int a[5], i;
    printf("Enter 5 elements: ");
    for (i = 0; i < 5; i++)
        scanf("%d", &a[i]);
    display(a);
}

ผลลัพธ์

Enter 5 elements: 10 20 30 40 50
10 20 30 40 50

โปรแกรมที่ 2: พิมพ์ array ย้อนกลับ

#include <stdio.h>
void rev(int array[5]) {
    for (int i = 4; i >= 0; i--)
        printf("array[%d] = %d\n", i, array[i]);
}
void main() {
    int array[5], i;
    printf("Enter elements:\n");
    for (i = 0; i < 5; i++) {
        printf("array[%d]: ", i);
        scanf("%d", &array[i]);
    }
    printf("Reverse order:\n");
    rev(array);
}

ผลลัพธ์

Enter elements:
array[0]: 23
array[1]: 34
array[2]: 12
array[3]: 56
array[4]: 12
Reverse order:
array[4] = 12
array[3] = 56
array[2] = 12
array[1] = 34
array[0] = 23