Menu
CoddyTech

Fungsi Variadik

Pelajaran 10 dari 17 dalam kursus Fungsi dalam C di Coddy.

Di C, seperti dalam bahasa pemrograman lain, ada konsep yang disebut fungsi variadic, yaitu fungsi yang menerima jumlah parameter tanpa batas.

Untuk menggunakan fungsi variadic, pertama-tama kita perlu menyertakan file header <stdarg.h>.

Mari kita lihat contoh untuk mengetahui cara kerjanya:

#include <stdio.h>
#include <stdarg.h>
int sum(int num, ...) {
   va_list list;        
   va_start(list, num);
   int sum = 0;
   for (int i = 0; i < num; i++) {
       sum += va_arg(list, int); 
   }
   va_end(list); 
   printf("%d", sum);
}
int main() {
    sum(2, 20, 30);          
   return 0;
}

Dalam contoh ini, fungsi sum menghitung jumlah dari sejumlah nilai integer yang bervariasi.

  1. Deklarasikan variabel untuk menyimpan daftar argumen menggunakan macro <strong>va_list</strong>:

    va_list list;
  2. Inisialisasi daftar argumen:

    va_start(list, num);
  3. Deklarasikan variabel untuk menyimpan jumlah:

    int sum = 0;
  4. Telusuri semua elemen, ambil setiap argumen, lalu tambahkan ke jumlah:

    for (int i = 0; i < num; i++) {
           sum += va_arg(list, int); 
       }
  5. Bersihkan daftar argumen setelah perhitungan selesai:

     va_end(list); 
  6. Dalam fungsi <strong>main</strong>, panggil fungsi <strong>sum</strong> seperti ini:

      sum(2, 20, 30);  

     

 

challenge icon

Tantangan

Mudah

Dengan menggunakan fungsi variadik, buat fungsi bernama average yang menghitung dan mencetak rata-rata nilai siswa.

Coba sendiri

#include <stdio.h>
#include <stdarg.h>

// Fungsi untuk menghitung rata-rata 


int main() {
    
    // Panggil fungsi variadik | Jangan ubah ini
    average(4, 85, 90, 78, 92);

    return 0;
}

Semua pelajaran di Fungsi dalam C

Latihan sendiri: Compiler C online