Kamis, Agustus 13, 2015

Programming in C - Part 21 : Header, extern dan Fungsi Rekursif

Dalam sebuah program yang kompleks, fungsi selalu diletakkan dalam library sehingga dapat digunakan secara bersama- sama oleh beberapa bagian program. Fungsi-fungsi dapat dikumpulkan dalam suatu file tersendiri.  Untuk menggunakan fungsi yang ditulis di file lain dapat menggunakan :
  • header
  • extern
Header adalah file teks yang biasanya diberikan ekstensi .h (header) yang berisi fungsi - fungsi yang dapat digunakan oleh program yang meng-include header tersebut. Untuk menggunakan fungsi ini dilakukan dengan Menggunakan kata kunci include "namaFile.h"

Penggunaan header lebih praktis. Namun perlu diketahui bahwa header hanya boleh diinclude satu kali saja, jika tidak akan muncul pesan kesalahan pada saat kompilasi. Bila anda menuliskan fungsi dalam suatu file yang diberinama fungsi.h, maka anda dapat menggunakan semua fungsi dalam file fungsi.h tersebut dengan memanggilnya sbb :

Selasa, Agustus 04, 2015

Programming in C - Part 20: typedef

Kata kunci (keyword) typedef ini sangat sering dijumpai dalam pemrograman dalam bahas C. keyword ini digunakan untuk memberi nama baru pada tipe data tertentu, termasuk pada tipe data yang dibuat sendiri oleh user, misalnya structure. Untuk menggunakan keyword ini cukup dengan menambahkan keyword typedef di depan tipe data yang akan didefinisikan. 
 
Contoh :
typedef int BILANGAN ;
 
setelah perintah ini kita dapat menggunakan BILANGAN untuk deklarasi tipe data integer. Dengan kata lain kita mengganti nama int dengan BILANGAN.

BILANGAN i,j ;
Penggunaan typedef akan jauh lebih bermanfaat pada type data yang dibuat sendiri oleh user. SEbagai contoh, berikut ini adalah penggabunagan antara typedef dengan structure.

Programming in C - Part 19: Alokasi Memory secara Dinamis (Dynamic Memory Allocation)

Anda tentu masih ingat bahwa panjang sebuah array yang dideklarasikan harus diketahui sebelumnya.Jika tidak didefinisikan, maka program akan menampilkan pesan error pada saat kompilasi program. Sayangnya dalam banyak hal kita jarang sekali dapat mengetahui dengan pasti berapa banyak data yang akan dimasukkan ke dalam array. Bayangkan anda membuat sebuah software statistik sederhana dimana software tersebut akan menghitung jumlah dan rata-rata dari angka yang dimasukkan. Anda juga menginginkan deretan data yang dimasukkan user akan disimpan dalam sebuah array. Tentu saja anda tidak akan pernah tahu berapa banyak data yang akan dimasukkan oleh user.

Situasi seperti ini dapat diatasi dengan menggunakan teknik Dynamic Memory Allocation, dimana memory akan dialokasikan pada saat run time. Teknik ini juga akan mengurani beban pada memory stack karena data yang dimasukkan akan disimpan pada area lainnya, misalnya data segment pada memori komputer.
Untuk memahahi hal ini dapat dilihat program berikut ini

Programming in C - Part 18: Structure

Anda dapat mendeklarasikan dan menginisiasi sebuah variabel dalam bahasa C dengan menetapkan tipe datanya. Misalnya

int i = 0 ;

adalah perintah untuk mencadangkan sebuah lokasi blok memori yang diberi nama i dan akan berisi data bertipe integer, dalam hal ini diisi dengan 0.

int i[5] ;
adalah perintah yang sama dengan di atas hanya saja perintah ini mencadangkan 5 blok memori yang masing-masing blok akan diisi data bertipe integer. Anda pasti ingat bahwa perintah ini adalah untuk mendeklarasikan sebuah array bertipe integer. Dalam array tersebut anda hanya diperbolehkan menyimpan data bertipe yang sama yaitu integer. Bagaimana jika anda ingin menyimpan data tipe berbeda?.

Pada kehidupan nyata, anda pasti pernah melihat sebuah tabel yang terdiri dari beberapa kolom. Misalnya kolom pertama berisi nama, kolom kedua berisi alamat, kolom ke tiga berisi berat badan dst. Jelas bahwa kolom pertama dan kedua bertipe string (array of char) sedangkan tipe ke tiga bertipe integer, atau bisa juga double. Intinya bahwa terdapat perbedaan tipe data pada setiap kolom. Perhatikan tabel beriktu ini

Programming in C - Part 17: Fungsi, array dan pointer dalam bahasa C

Pada artikel sebelumnya kita sudah membahas tentang dasar-dasar fungsi dalam bahasa C. Pada artikel ini akan dibahas lebih lanjut mengenai fungsi termasuk metode memanggil array atau pointer sebagai parameter dan luaran dari sebuah fungsi.

Pada dasarnya ada dua cara untuk membuat parameter dalam fungsi yaitu Call by value (menggunakan nilai), dan Call by reference (menggunakan alamat dari suatu variabel dalam memori).

Call by value adalah metode memanggil suatu fungsi dengan memberikan parameter nilai (baik memberikan angka langsung atau menggunakan variabel) secara langsung. contoh dari metode ini adalah pada fungsi tampilkanHasil, dimana value yang diberikan adalah 100 dan 20.

Jumat, Juli 31, 2015

Programming in C - Part 16: Fungsi dalam bahasa C

Fungsi adalah blok perintah yang digunakan untuk melakukan pekerjaan tertentu, baik yang menghasilkan nilai balik ataupun tidak, yang diletakkan diluar prosedur utama. Blok perintah ini dapat digunakan berulang kali dengan memanggil namanya dan parameter yang dibutuhkan. Penggunaan fungsi dalam sebuah program daopat mempermudah dalam hal maintaing program sekaligus mempermudah tracking jika terdapat kesalahan.

Programming in C - Part 15: Pointer dalam bahasa C - Tambahan.

Untuk lebih memahami cara kerja pointer, perhatikan dua listing kode berikut ini :

#include <stdio.h>

int main(void)
{
/* ====================
 * List berikut ini  mendemonstrasikan penggunaan pointer of pointer
 * Cara 1 :
 */  

    int b = 14;
    int *a = NULL;
    int *c = NULL;       // satu bintang

    a = &b;
    c = a;                // tanda & dihilangkan !
    
    printf ("\nHasil dari Cara 1 :\n");

    printf("%d\t", *a);     // mencetak 14
    printf("%d ",  *c);     // mencetak 14