fbpx

Struktur Data : Fungsi dalam Bahasa C

๐Ÿ“‹ Daftar Isi

Fungsi dalam bahasa C tidak berbeda dengan fungs dalam bahasa pemrogaman lainnya. Fungsi adalah suatu blok statement/code yang melakukan tugas tertentu.

Pendeklarasian fungsi dalam bahasa C dapat didefinisikan sebelum main() dan sesudah main()


Fungsi didefinisikan sebelum main()

#include <stdio.h>

void displaymessage()
{
  printf("www.belajarstatistik.com");
}

void main()
{
  displaymessage();
};

Fungsi didefinisikan setelah main()

#innclude <stdio.h>

//prototypr declaration
void displaymessage();

void main() 
{
  displaymessage();
}

void displaymessage()
{
  printf("www.belajarstatistik.com");
}

Dalam fungsi dikenal dua istilah berikut

  • Pass by reference (Pointer sebagai parameter fungsi) : alamat digunakan untuk mengakses parameter yang dipanggil fungsi, jika ada dilakukan perubahan dalam fungsi tsb maka akan mengubah nilai dalam alamat tersebut.
  • Pass by value : mengakses nilai dari parameter yang dipanggil di fungsi

Pointer Sebagai Parameter Fungsi

Pass by value

#include <stdio.h>

int tambahsatu(int a);
int main()
{
  int m = 14;
  printf("m = %d\n", m);
  
  int n = tambahsatu(m);
  printf("m = %d\n", m);
  printf("n = %d\n", n);
 
  return 0;
}

int tambahsatu(int a) //by value
{
  a = a + 1;
  return a;
}

Pass by reference

#include <stdio.h>

int tambahsatu(int *a) //by reference

int main()
{
  int m = 14;
  printf("m = %d\n", m);
  
  int n = tambahsatu(&m);
  printf("m = %d\n", m);
  printf("n = %d\n", n);
 
  return 0;
}

int tambahsatu(int *a) //by reference
{
  *a = *a + 1;
  return *a;
}

Pointer Sebagai Return Value Suatu Fungsi

#include <stdio.h>

int *getMax(int *, int *);

int main(void)
{
  int x = 100;
  int y = 200;
   
  int *max;
  max = getMax(&x, &y);
  printf("Max value: %d\n", *max);

  return 0;
}

int *getMax(int *m, int *n)
{
  if (*m > *n)
  {
    return m;
  }
  else
  {
    return n;
  }
}}

Jika nilai yang ditunjuk pointer m lebih besar dari nilai yang ditunjuk pointer n,
maka return alamat dari m
Lainnya, maka return alamat dari n


Materi Lengkap

Silakan baca juga beberapa artikel menarik kami tentang Struktur dan Pointer, daftar lengkapnya adalah sebagai berikut.


Tonton juga video pilihan dari kami berikut ini

Bagikan ke teman-teman Anda

Contact Us

How to whitelist website on AdBlocker?

How to whitelist website on AdBlocker?

  1. 1 Click on the AdBlock Plus icon on the top right corner of your browser
  2. 2 Click on "Enabled on this site" from the AdBlock Plus option
  3. 3 Refresh the page and start browsing the site
error: Content is protected !!