C (Programming Language)


Ini bukan sebuah tutorial dalam penggunaa bahasa C dalam pemrograman dan juga bukan kumpulan program C, ini hanya sedikit berbagi tentang bahasa C.

Bahasa C sebagai bahasa tingkat menengah. Penggolongan ke dalam bahasa tingkat menengah bukanlah berarti bahwa bahasa C lebih sulit dibandingkan dengan bahasa tingkat tinggi seperti PASCAL atau BASIC. Demikian juga bahasa C bukanlah bahasa yang berorientasi pada mesin seperti bahasa mesin dan assembly. Pada kenyataannya bahasa C mengkombinasikan elemen dalam bahasa tingkat tinggi dan bahasa tingkat rendah. Kemudahan dalam membuat program yang ditawarkan pada bahasa tingkat tinggi dan kecepatan eksekusi dari bahasa tingkat rendah merupakan tujuan diwujudkannya bahasa C.

Beberapa kelebihan dari bahasa C:

  • Bahasa C tersedia hampir di semua jenis komputer, baik mikro, mini maupun komputer besar (mainframe computer).
  • Kode bahasa C bersifat portabel.
  • Berbagai struktur data dan pengendalian proses disediakan dalam C sehingga memungkinkan untuk membuat program yang terstruktur.
  • Dibandingkan dengan bahasa mesin atau assembly, C jauh lebih mudah dipahami dan pemrogram tidak perlu mengetahui mesin komputer secara detil.
  • C memungkinkan memanipulasi data dalam bentuk bit maupun byte. Di samping itu juga memungkinkan untuk memanipulasi alamat dari suatu data atau pointer.

Kelemahan bahasa C yang dirasakan oleh para pemula bahasa C:

  • Banyaknya operator serta fleksibilitas penulisan program kadang-kadang membingungkan pemakai. Kalau tidak dikuasai sudah tentu akan menimbulkan masalah.
  • Para pemrogram C tingkat pemula umumnya belum pernah mengenal pointer dan tidak terbiasa menggunakannya.

Compile dan Linking pada bahasa C

  • Agar suatu program dalam bahasa pemrograman dapat dimengerti oleh komputer, program haruslah diterjemahkan dahulu ke dalam kode mesin.
  • Adapun penerjemah yang digunakan bisa berupa interpreter atau kompiler.

Interpreter adalah suatu jenis penerjemah yang menerjemahkan baris per baris intsruksi untuk setiap saat. Keuntungan pemakaian interpreter, penyusunan program relatif lebih cepat dan bisa langsung diuji sekalipun masih ada beberapa kesalahan secara kaidah dalam program. Sedangkan kelemahannya, kecepatannya menjadi lambat sebab sebelum suatu instruksi dijalankan selalu harus diterjemahkan terlebih dahulu. Selain itu, saat program dieksekusi, interpreter juga harus berada dalam memori. Jadi memori selalu digunakan baik untuk program maupun interpreter. Di samping itu, program sumber (source program) yaitu program aslinya tidak dapat dirahasiakan (orang lain selalu bisa melihatnya).

Kebanyakan versi C yang beredar di pasaran menggunakan penerjemah berupa kompiler. Kompiler merupakan jenis penerjemah yang lain, dengan cara kerjanya yaitu menerjemahkan seluruh instruksi dalam program sekaligus. Proses pengkompilasian ini cukup dilakukan sekali saja. Selanjutnya hasil penerjemahan (setelah melalui tahapan yang lain) bisa dijalankan secara langsung, tanpa tergantung lagi oleh program sumber maupun kompilernya. Keuntungannya, proses eksekusi dapat berjalan dengan cepat, sebab tak ada lagi proses penerjemahan. Di samping itu, program sumber bisa dirahasiakan, sebab yang dieksekusi adalah program yang sudah dalam bentuk kode mesin. Sedangkan kelemahannya, proses pembuatan dan pengujian membutuhkan waktu relatif lebih lama, sebab ada waktu untuk mengkompilasi (menerjemahkan) dan ada pula waktu melakukan proses linking. Perlu pula diketahui, program akan berhasil dikompilasi hanya jika program tak mengandung kesalahan secara kaidah sama sekali.

image

Keterangan Gambar :

  1. Pertama-tama program C ditulis dengan menggunakan editor. Program ini disimpan dalam file yang disebut file program sumber (dengan ciri utama memiliki ekstensi .c).
  2. File include (umumnya memiliki ekstensi .h, misalnya stdio.h, atau biasa disebut dengan file judul (header file)) berisi kode yang akan dilibatkan dalam program C (Pada program tertentu bisa saja tidak melibatkan file include).
  3. Berikutnya, kode dalam file program sumber maupun kode pada file include akan dikompilasi oleh kompiler menjadi kode obyek. Kode obyek ini disimpan pada file yang biasanya berekstensi .obj, atau .o (bergantung kepada lingkungan/environment sistem operasi yang dipakai). Kode obyek berbentuk kode mesin, oleh karena itu tidak dapat dibaca oleh pemrogram. Akan tetapi kode ini sendiri juga belum bisa dipahami komputer.
  4. Supaya bisa dimengerti oleh komputer, maka kode obyek bersama-sama dengan kode obyek yang lain (kalau ada) dan isi file pustaka (library file, yaitu file yang berisi rutin untuk melaksanakan tugas tertentu. File ini disediakan oleh pembuat kompiler, biasanya memiliki ekstensi .lib) perlu dikaitkan (linking) dengan menggunakan linker, membentuk sebuah program yang executable (program yang dapat dijalankan/dieksekusi secara langsung dalam lingkungan sistem operasi).
  5. Program hasil linker ini disimpan dalam file yang disebut file executable, yang biasanya berekstensi .exe.

Struktur Penulisan Program C

Untuk dapat memahami bagaimana suatu program ditulis, maka struktur dari program harus dimengerti terlebih dahulu. Tiap bahasa komputer mempunyai struktur program yang berbeda. Struktur program memberikan gambaran secara luas, bagaimana bentuk program secara umum.

Program C pada hakekatnya tersusun atas sejumlah blok fungsi. Sebuah program minimal mengandung sebuah fungsi. Fungsi pertama yang harus ada dalam program C dan sudah ditentukan namanya adalah main(). Setiap fungsi terdiri atas satu atau beberapa pernyataan, yang secara keseluruhan dimaksudkan untuk melaksanakan tugas khusus.

Bagian pernyataan fungsi (sering disebut tubuh fungsi) diawali dengan tanda kurung kurawal buka ({) dan diakhiri dengan tanda kurung kurawal tutup (}). Di antara kurung kurawal itu dapat dituliskan statemen-statemen program C. Namun pada kenyataannya, suatu fungsi bisa saja tidak mengandung pernyataan sama sekali. Walaupun fungsi tidak memiliki pernyataan, kurung kurawal haruslah tetap ada. Sebab kurung kurawal mengisyaratkan awal dan akhir definisi fungsi.

image

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s