Pages

Subscribe:

Blogroll

Labels

Selasa, 16 Agustus 2011

Dasar Programming C

C programming language
C adalah bahasa pemrograman yang dikembangkan oleh Dennis Ritchie pada tahun
1970 untuk pemakaian pada sistem operasi UNIX, dan sampai sekarang bahasa ini telah
dipergunakan secara praktis pada hampir semua sistem operasi. Bahasa C merupakan
bahasa yang paling populer untuk menulis sistem software, dan aplikasi. serta banyak
digunakan dalam pelajaran Komputer Sains.

Features
C adalah bahasa yang lebih low-level dibandingkan dengan bahasa pemrograman
lainnya. Walaupun kadang-kadang disebutkan sebagai ?high-level-language?,
sebenarnya ia hanya lebih high-level dibandingkan dengan bahasa assembly.
C memiliki dua keunggulan utama dibandingkan dengan assembly. Pertama, kodenya
lebih mudah dibaca dan ditulis, terutama untuk program yang panjang. Kedua, kode
assembly biasanya hanya bisa diterapkan pada arsitektur komputer yang tertentu saja,
sedangkan program C dapat di pindahkan ke berbagai arsitektur dimana kalau compiler
dan librarynya tersedia.
Sebaliknya efisiensi dari kode C adalah sangat bergantung pada kemampuan dari
compiler untuk mengoptimisasi bahasa mesin yang dihasilkan, yang mana hal ini berada
diluar kendali programmer.
Demikian juga keunggulan dan kelemahan antara C dengan bahasa high-level lainnya
dimana efisiensi yang dihasilkan oleh kode C dapat lebih terkontrol, dan konsekuensinya
adalah lebih sulit dibaca dan ditulis, tetapi perlu dicatat bahwa C adalah bahasa tingkat
tinggi yang portabel, karena sampai saat ini hampir semua arsitektur komputer
menyediakan compiler C dan librarynya.
Sesuatu fasilitas dari C yang perlu menjadi perhatian programmer adalah kemampuan
dalam mengatur isi memori komputer. C Standar tidak menyediakan fasilitas array
bounds checking yang dengan mudah akan menyebabkan bug dalam kaitannya dengan
operasi memori, seperti buffer overflows, serta computer insecurity.
Beberapa fasilitas C adalah:
? Suatu bahasa dengan (kernel) inti yang sederhana, dimana fungsi-fungsi yang
kurang penting tersedia sebagai kumpulan rutin-rutin pustaka (library) yang di
standarisasi.
? Terfokus pada paradigma pemrograman procedural, dengan fasilitas
pemrograman yang terstruktur.
? Memiliki suatu bahasa preprocessor
? Memiliki perfomance O(1) untuk semua operator.
? Akses secara Low-level pada memori komputer melalui pointer.
? Parameter selalu dilewatkan ke function secara by value, bukan by reference.

History
Early developments
Pengembangan C mula-mula dilakukan di laboratoriun AT&T Bell antara tahun 1969
dan 1973; menurut Ritchie, periode yang paling kreatif adalah 1972. Namanya C karena
banyak fasilitasnya diambil dari bahasa sebelumnya yang disebut sebagai ?B?.
Pada tahun 1973, bahasa C menjadi cukup powerfull dimana biasanya kernel UNIX
aslinya ditulis dengan menggunakan bahasa assembly PDP-11/20, telah ditulis kembali
dengan menggunakan C. Ini merupakan pertama kali kernel suatu sistem operasi yang
ditulis dengan bahasa selain assembly.
K&R C
Pada tahun 1978, Ritchie dan Brian Kerhighan mempubikasikan suatu buku edisi
pertama dengan judul The C Programming Language. Buku ini dikenal oleh para
programmer C sebagai ?K&R?.
K&R mengenalkan fasilitas berikut pada bahasa tersebut :
? Type data struktur (struc)
? Type data long int
? Type data unsigned int
? Operator =+ diganti dengan +=, karena (=+ membingungkan lexical analyzer
Compiler C).
Pada tahun setelah publikasi K&R C, beberapa fasilitas tambahan seperti :
? void function dan void * data type
? fungsi pengembalian struct atau union type
? nama field struct dipisahkan dengan sebuah spasi setelah type struct.
? assignment untuk type data struct
? const qualifier untuk membuat suatu object read-only
? suatu standard library yang terdiri dari banyak fungsi yang di sediakan oleh
berbagai vendor.
? enumerations
? type single-precision float

ANSI C and ISO C
Sejak tahun 1970, C mulai mengantikan BASIC sebagai pemimpin bahasa pemrograman
mikrokomputer. Sejak 1980 mulai diadopsi pemakaiannya pada IBM PC, dan
popularitasnya mulai bertambah secara nyata. Pada saat yang bersamaan Bjarne
Stroustrup pada Bell Labs mulai bekerja untuk menambah konstruksi object-oriented
pada C. Bahasa yang mereka produksi disebut sebagai C++, dan sekarang merupakan
bahasa yang banyak dipergunakan pada sistem operasi Microsoft Windows; sedangkan
C tetap merupakan bahasa yang poluler di Unix.
Pada tahun 1983, American National Standards Institute (ANSI) membentuk suatu
komite, X3J11, untuk mengembangkan suatu spesifikasi standard untuk C. Melalui
proses yang panjang, standard tersebut berhasil diselesaikan pada tahun 1989 (satu tahun
setelah standard ANSI pertama untuk C++!) dan diratifikasikan sebagai ANSI X3.159-
1989 ?Programming Language C?. Versi bahasa ini sering disebut sebagai ANSI C. Pada
tahun 1990, ANSI C standard (dengan beberapa modifikasi kecil) telah diadopsi oleh
International Standards Organization (ISO) sebagai ISO/IEC 9899:1990.
ANSI C didukung oleh kebanyakan compiler. Banyak kode C yang ditulis sekarang
didasarkan pada ANSI C. Semua program yang ditulis dengan standard C dijamin akan
berfungsi dengan baik pada platform lain yang memiliki C. Tetapi banyak juga program
C yang hanya dapat di kompilasi pada platform tertentu dengan compiler tertentu
sehubungan dengan library non standard, misalnya untuk graphic.

C99
Setelah proses standarisasi oleh ANSI, sepesikasi bahasa C masih relatif statis untuk
beberapa saat, sedangkan C++ terus berevolusi. (Normalnya penyempurnaan 1 telah
menghasilkan suatu versi C yang baru pada tahun 1995, tetapi versi yang ini jarang
diketahui.) Sedangkan, revisi standard tahun 1990, mengawali publikasi sebagai ISO
9899:1999 pada tahun 1999. Standard ini disebut sebagai ?C99″ telah diadopsi sebagai
ANSI standard pada 2000.
Kemampuan baru C99 meliputi:
? fungsi inline function
? membebaskan pembatasan terhadap tempat deklarasi variabel (seperti pada C++)
? menambah beberapa type data baru, termasuk long long int (untuk
mengurangi kesulitan transisi 32-bit ke 64-bit), type data boolean, dan suatu yang
baru untuk bilangan complex.
? array variable-length
? dukungan resmi terhadap one-line comment yang dimulai dengan //, dipinjam
dari C++
? beberapa fungsi library baru, seperti snprintf()
? beberapa header file baru, seperti stdint.h
Dukungan terhadap C99 cukup beragam, dimana GCC dan beberapa compiler lainnya
mendukung fasilitas C99, tetapi compiler yang dibuat oleh Microsoft dan Borland tidak.

0 komentar:

Posting Komentar

lancarklik.com

Lancarklik
About The Author
Nama saya Yudi Aditya, Saya Bukan Seorang Blogger, Desainer atau Apapun Tapi Saya Hanya Seseorang Yang Ingin Selalu Belajar dan Ingin Tahu Sesuatu Yang Baru...