Penggunaan fungsi DATA-STRUCTURES pada PHP

#C

Apa itu Struct?

Structure atau struct adalah kumpulan dari beberapa variabel dengan beragam tipe data yang dibungkus dalam satu varabel.

Struct juga dikenal dengan records dalam bahasa pemrograman lain seperti Pascal.

Mengapa kita membutuhkan struct?

Sekarang coba pikirkan…

Misalnya kita ingin menyimpan data mahasiswa. Kita bisa saja melakukannya seperti ini:

char name[] = "Dian"; char address[] = "Mataram"; int age = 22;

Lalu bagaimana kalau ada lebih dari satu mahasiswa?

Mungkin bisa saja kita buat seperti ini:

char name[] = "Dian"; char address[] = "Mataram"; int age = 22; char name2[] = "Bambang"; char address2[] = "Surabaya"; int age2 = 23; char name3[] = "Bimo"; char address3[] = "Jakarta"; int age3 = 23;

Ugh! terlihat kurang bagus.

Biar tidak membuat banyak variabel seperti ini, maka kita bisa gunakan struct.

Cara Membuat Struct

Struct dapat kita buat dengan kata kunci struct kemudian diikuti dengan nama struct dan isinya.

Contoh:

struct Mahasiswa { char *name; char *address; int age; };

Catatan: kita menggunakan pointer * untuk data string

Kita sudah tahu cara membuat struct, lalu bagaimana cara menggunakannya?

Cara Menggunakan Struct

Agar struct dapat digunakan, kita harus membuat variabel untuknya.

Contoh:

Buatlah program baru dengan nama contoh_struct.c kemudian isi dengan kode berikut.

#include <stdio.h> // membuat struct struct Mahasiswa { char *name; char *address; int age; }; void main(){ // menggunakan struct struct Mahasiswa mhs1, mhs2; // mengisi nilai ke struct mhs1.name = "Dian"; mhs1.address = "Mataram"; mhs1.age = 22; mhs2.name = "Bambang"; mhs2.address = "Surabaya"; mhs2.age = 23; // mencetak isi struct printf("## Mahasiswa 1 ##\n"); printf("Nama: %s\n", mhs1.name); printf("Alamat: %s\n", mhs1.address); printf("Umur: %d\n", mhs1.age); printf("## Mahasiswa 2 ##\n"); printf("Nama: %s\n", mhs2.name); printf("Alamat: %s\n", mhs2.address); printf("Umur: %d\n", mhs2.age); }

Hasilnya:

Menggunakan typedef pada Struct

Kata kunci typedef adalah kata kunci untuk mendefinisikan tipe data baru.

Kita bisa menggunakan kata kunci ini di depan struct untuk menyatakannya sebagai tipe data baru.

Contoh:

Tanpa typedef kita akan menggunakan struct seperti ini.

// membuat struct struct Distance{ int feet; float inch; }; void main() { // menggunakan struct struct Distance d1, d2; }

Nah, kalau menggunakan typedef akan menjadi seperti ini:

// membuat struct dengan typedef typedef struct Distance{ int feet; float inch; } distances; void main() { // menggunakan struct distances dist1, dist2, sum; }

Struct Bersarang

Struct dapat dibuat bersarang (nested). Bersarang artinya ada struct di dalam struct.

Contoh:

struct complex { int imag; float real; }; struct number { struct complex comp; int integers; } num1, num2;

Lalu cara menggunanya akan seperti ini:

num1.integer = 12; num1.comp.real = 44.12; num2.comp.imag = 11;

Passing Struct ke dalam Fungsi

Struct dapat kita buat sebagai parameter untuk fungsi.

Contoh:

#include <stdio.h> struct student { char name[50]; int age; }; void main() { struct student s1; printf("Enter name: "); scanf("%[^\n]%*c", s1.name); printf("Enter age: "); scanf("%d", &s1.age); display(s1); // passing structure as an argument } // membuat fungsi dengan struct sebagai parameter void display(struct student s) { printf("\nDisplaying information\n"); printf("Name: %s", s.name); printf("\nRoll: %d", s.age); }

Hasilnya:

Akhir Kata…

Kita sudah memperlajari dasar-dasr penggunaan Struct pada bahasa C. Selanjutnya silahkan berlatih dengan contoh program yang lain agar semakin paham.

Akhir kata…

Selamat belajar bahasa C.

Postingan terbaru

LIHAT SEMUA