Computer >> Máy Tính >  >> Lập trình >> lập trình C

Làm cách nào để truyền toàn bộ mảng dưới dạng đối số cho một hàm trong ngôn ngữ C?

Mảng

Mảng là một nhóm các mục có liên quan được lưu trữ với một tên chung. Sau đây là hai cách truyền mảng làm đối số cho các hàm -

  • gửi toàn bộ mảng dưới dạng đối số cho hàm
  • gửi các phần tử riêng lẻ dưới dạng đối số cho hàm

Gửi toàn bộ mảng dưới dạng đối số cho một hàm

  • Để gửi toàn bộ mảng dưới dạng đối số, chỉ cần gửi tên mảng trong lệnh gọi hàm.

  • Để nhận một mảng, nó phải được khai báo trong tiêu đề hàm.

Ví dụ 1

#include<stdio.h>
main (){
   void display (int a[5]);
   int a[5], i;
   clrscr();
   printf ("enter 5 elements");
   for (i=0; i<5; i++)
      scanf("%d", &a[i]);
   display (a); //calling array
   getch( );
}
void display (int a[5]){
   int i;
   printf ("elements of the array are");
   for (i=0; i<5; i++)
      printf("%d ", a[i]);
}

Đầu ra

Enter 5 elements
10 20 30 40 50
Elements of the array are
10 20 30 40 50

Ví dụ 2

Chúng ta hãy xem xét một ví dụ khác để biết thêm về cách truyền toàn bộ mảng làm đối số cho hàm -

#include<stdio.h>
main (){
   void number(int a[5]);
   int a[5], i;
   printf ("enter 5 elements\n");
   for (i=0; i<5; i++)
      scanf("%d", &a[i]);
   number(a); //calling array
   getch( );
}
void number(int a[5]){
   int i;
   printf ("elements of the array are\n");
   for (i=0; i<5; i++)
      printf("%d\n" , a[i]);
}

Đầu ra

enter 5 elements
100
200
300
400
500
elements of the array are
100
200
300
400
500