Title: Bagian 2 INTRODUCTION BORLAN C
1Bagian 2INTRODUCTION BORLAN C
2Awal Berkenalan
Sejarah C
- Bahasa C hasil kreasi dari Dennis M. Ritchie
(1972) di Bell Telephone Laboratory Inc., Murray
Hill, New Jersey, USA (Sekarang dikenal dengan
ATT Bell Laboratory) - Implementasi pertama pada OS UNIX, dan dijalankan
di mesin DEC PDP-II - Merupakan pengembangan dari B (Ken Thomson) dan
bahasa BCPL/Basic Command Programming Language
(Martin Richards)
3Mengapa mesti C ?
- Bahasanya ringkas, hanya terdiri dari 32 keyword
menurut standar ANSI - Tersedia secara komersial untuk segala jenis
komputer dan sistem operasi - Terstruktur sekaligus fleksibel
- Programnya bekerja lebih cepat dan lebih tangguh,
karena akses dekat ke sistem - Kebanyakan pengembangan bahasa pemrograman ke
depan meniru sintax C (C-LIKE mirip C), seperti
Java, Javascript, C, Php,
4Keyword C
32 keyword ANSI C
Beberapa compiler juga menyediakan beberapa
keyword seperti berikut ini asm far huge
pascal ada fortran near
Catatan Semua keyword pada kode program C
ditulis dengan huruf kecil
5Penyebut (Identifier)
- Penyebut pada C meliputi lebih dari 200 kata,
masing-masing digunakan untuk memberikan nama
function pada rutin pustaka pada C Library.
Penyebut tersebut direkan pada file dengan ekor
(extension) H dan disebut Header file atau file H
sedangkan rutin pelaksana dihimpun pada file
bereksensi LIB. - Penggunaannya harus dideklarasikan menggunakan
sintax - include ltnama_file.hgt
- Sintax diatas ditulis pada bagian naskah program
yang disebut bagian preprosesor
6Nama-nama Function Identifier
Routin untuk Klasifikasi karakter ASCII Terdapat
di dalam file bernama ctype.h isalnum isaldigi
t isapunc isalpha isgraph isaspace isascii is
lower isupper iscntrl isuprint isxdigit Routi
n untuk menggarap directory dan path
name. Terdapat di dalam file bernama
dir.h chdir fnsplit mkdir setdisk findfirst
getcurdir mktemp findnext getcwd rmdir fnmerge
getdisk searchpath
7Lajutan indentifier
- Routin untuk melihat waktu terdapat di dalam
file time.h - asctime ctime difftime gmtime
localtime tzst - Routin untuk konversi type data terdapat di dalam
file stdlib.h - atof atol fcvt itoa strtod ultoa atoi ecvt gcvt
- toa strtod
- Sedangkan funsi konfersi yang terdapat dalam
filectype.h - To ascii tolower _tolower toupper _toupper
- Routin untuk perhitungan matematika yang terdapat
dalam file math.h - acos poly cos log sqrt asin atan cosh log10
- tan exp atan2 floor _matherr tanh fabs atof fmod
- pow matherr cabs frexp pow10 modf ceil hypot sinh
8Lanjutan identifier
- Routin matematika yang terdapat dalam
filestdlib.h - abs fcvt itoa rand strtol atol atof labs srand
- ultoa ecvt atoi iloa strtod
- Routin untuk manipulasi string terdapat dalam
file string.h - stpcpy strspn strlwr strnset strspn strcat strdup
strncat strncat - strpbrk strstr strchr strerror strncmp strrchr str
upr strcmp stricmp - strncpy strrev strcpy strlen strnicmp strset
- Routin untuk melihat waktu terdapat dalam file
dos.h - dostounix getdate gettime setdate settime unixtod
os - Routin untuk akses ke BIOS terdapat dalam file
bios.h - Bioscom bioskey biosprint biosdisk
biosequip biosmemory biostime
9Lanjutan indentifier
- Routin untuk lintas data (input/output) terdapat
pada file stdio.h - fclose fputchar getchar remove vfscanf fcloseall f
puts getche rename - vsprintf fdopen fread getftime rewind vscanf feof
freopen getpass - scanf flushall ferror fscanf getw setbuf fopen ffl
ush fseek - gsignal setvbuf fprintf fgetc ftell perror sprintf
putc filelength - fwrite printf ascanf fileno getc puts strerror fpu
tc getch - Yang terdapat dalam file conio.h
- cgets getch kbhit putch cputs getche ungetch cprin
tf - Sedangkan yang terdapat dalam file io.h
- accses close open lock sopen unlock _write creat t
ell - eof dup dup2 isatty setmode _open _creat creatnew
_close - chmod settime lseak getftime
10Karakteristik bahasa C
- Semua modul dalam bentuk fungsi (Perbedaan fungsi
dan prosedur ?) - Tidak mengenal space sebagai pemisah, kecuali
antar instruksi yang berbeda. - Setiap statemen dipisahkan oleh semicolon ().
- Kode programnya bersifat case-sensitif(membedakan
huruf kapital dan huruf kecil). Keyword dan
perintah-perintah dituliskan dengan huruf kecil.
11Struktur Dasar Program C
Setiap Program C terdiri dari satu atau lebih
fungsi (function). Salah satu dari fungsi
tersebut harus bernama main
Struktur Program
Deklarasi header/library Deklarasi
variabel/konstanta Deklarasi fungsi KODE
utama
optional, adanya tergantung kebutuhan
Bandingkan dengan Struktur Program Pascal
Deklarasi nama program Deklarasi
unit Deklarasi type Deklarasi
variabel/konstanta Deklarasi
fungsi Deklarasi Prosedur Kode utama
12Contoh deklarasi1
Format Penulisan deklarasi library/header
File header pertama sekali akan dicari di
directory aktif saat ini, dan jika tidak ketemu
akan dicari ke directory include yang ditentukan
pada konfigurasi
include ltheader_namegt atau include
header_name
Contoh include stdio.h atau include
c\tc3\include\stdio.h atau include ltstdio.hgt
File header hanya akan dicari di directory yang
langsung ditentukan
File header hanya akan dicari di directory
include yang ditentukan pada konfigurasi
Bandingkan dengan pascal Uses crt
?
Perbandingan Di pascal uses di C include, di
pascal unit di C header, di pascal unit merupakan
file biner/terkompilasi (extention-nya .tpu), di
C header merupakan file ASCII (extention-nya .h,
dapat dibaca/dipelajari lebih lanjut)
13Contoh deklarasi2
Format Penulisan deklarasi variabel
Data_type variabel_name
Contoh int A float B,C char s
Bandingkan dengan pascal Var A integer
B,C real S char
14Format Penulisan deklarasi fungsi
return-type function_name(parameter)
deklarasi variabel lokal Statement
Return(value)
Contoh Int jumlah(int A,int B) Int C
CAB Return C
Bandingkan dengan pascal Function
jumlah(A,Binteger)integer Var C
integer begin CAB jumlah C End
15Contoh deklarasi3
Contoh fungsi utama pada C int main () Int
F,G F5G8 printf(Hasil jumlahnya d
\n,jumlah(F,G)) return 0
Bandingkan dengan pascal var F,G
integer begin Int F,G F5G8
writeln(Hasil jumlahnya ,jumlah(F,G)) end.
16Tentang Prosedur Bahasa C secara khusus tidak
memiliki prosedur, karena mudularisasi di C
dilakukan dengan fungsi. Tetapi fungsi di C dapat
di-akali untuk bekerja seperti prosedur. Contoh
dari prosedure pascal berikut Procedure
cetak(x,yintegersstring) Begin
gotoxy(x,y)textcolor(14) write(s) End Di C
ditulis dengan void cetak(int x,int y, char
s) gotoxy(x,y)textcolor(14)
cprintf(s,s)
17Contoh program lengkap
Nama file Program1.C
/program utama/ int main() int F,G
clrscr() F5 G3 printf("Hasil jumlah
d\n",hitung(F,G)) cetak(1,3,Saya sedang
belajar pemrograman) cetak(1,4,bahasa C")
getchar() return 0
/ program1 / include ltstdio.hgt include
ltconio.hgt /deklarasi fungsi hitung/ int
hitung(int A,int B) int C CAB return
C /deklarasi prosedur cetak / void
cetak(int x, int y,char s) gotoxy(x,y)
textcolor(14) cprintf("s",s)
18Bandingkan jika di pascal
program program1 uses crt deklarasi fungsi
hitung function hitung(A,Binteger)integer var
Cinteger begin cab jumlahC
end deklarasi procedure cetak procedure
cetak(x,yintegersstring) begin
gotoxy(x,y) textcolor(14) write(s) end
program utama var F,G integer begin
clrscr F5 G6 write(Hasil jumlah
',hitung(f,g)) cetak (1,3,Saya sedang
belajar pemrograman)
cetak(1,4,bahasa C") readln end.
19Proses Pembuatan Program Aplikasi
Run
Make
Mulai
Static Library File (.Lib)
Compiler
Linker
ASCII Editor
Source Code (.c,.cpp)
Dynamic Library File (.dll)
Object Code (.obj)
Executable File (.exe)
Preprosessor
Include File (.h)
Execution
Output
Selesai
20Bagaimana Menjalankan C ?
(Dengan aplikasi apa dan dimana program-program C
bisa dijalankan ?)
- Program C dapat dijalankan baik pada sistem
operasi DOS, Windows maupun Linux, juga berbagai
sistem operasi lainnya - Pada DOS kita dapat menggunakan Turbo C (Borland)
ver 3 ke bawah atau Microsoft C (kurang popular) - Pada Windows kita dapat menggunakan Borland C
versi 4.x atau ver 5.x (terakhir BCC ver 5.2),
symantec C, dan Visual C - Pada Linux kita bisa gunakan GNU C Compiler (GCC)
- Secara umum kode program C di semua jenis
compiler C dan pada berbagai sistem operasi sama
saja. Artinya tidak perlu dilakukan perubahan
kode program yang berarti jika hendak menjalankan
C melalui compiler yang berbeda-beda tadi (?).
Setidaknya setiap compiler C umumnya mengacu ke
ANSI C sebagai standarisasi C. - Tetapi beberapa compiler C ada yang memiliki
kelengkapan library yang berbeda dengan compiler
lain, sehingga perlu beberapa penyesuaian untuk
transfer kode programnya. Contoh GCC di Linux
tidak memiliki library/header conio.h, sedangkan
compiler C di DOS menggunakannya. - Umumnya compiler C menggunakan sistem pemberitaan
kesalahan (error message) yang runtun yang
berbeda dengan error message di bahasa lain. Hal
ini perlu diperhatikan untuk efisiensi
trouble-shoot kode program
21Menjalankan program C dengan Borlan C ver 5.2
Memulai Dari prompt DOS \bin\bcw.exe
enter Dari windows Click Start Programs -
Borlan C 5.02 - borlan c atau
Click file bcw.exe melalui Window
Explorer
- Petunjuk Dasar
- Ketikkan kode program di tempat yang
disediakan(text editor) - Menyimpan program File Save atau File Save
As atau CTRLKS - Mengkompail program (menghasilkan file obj)
Project-Compile (AltF9) - Mengkompail sekaligus me-link file (menghasilkan
file exe) - Project Make All (F9)
- Menjalankan program Debug Run (CtrlF9)
- Yang lain silahkan dicoba sendiri !
22Tampilan TC3
Tampilan awal Borlan C 5.02
23Menjalankan program C dengan Visual C
Dalam hal ini yang dimaksud Visual C adalah
fasilitas untuk menghasilkan program berbasis
tex-nya (program DOS) yaitu Win32 Console
Application - nya
- Memulai
- Jalankan Visual C dari icon-nya
- Setelah tampil menu visual C
- Pilih File New
- Dari dialog yang muncul click tab projects
- Dari tab projects pilih icon Win32 Console
Application, beri Project name misal Program1,
lalu click OK - Muncul dialog lagi, pilih An Empty Project,dan
click tombol Finish, lalu OK - Pada tab bagian kiri pilih tab FileView
- Pada badan tab click program1 files dan pilih
Source file - Click kanan dari source file, pilih Add Files
to Folder, beri nama misal program1.c, pada
dialog yang muncul pilih OK - Di dalam icon Source File, pilih Program1.c,
akan muncul layar tempat kita mengetikkan kode
program - Ketikkan kode program pada layar tersebut,
Compile dengan CtrlF7 dan jalankan dengan
CtrlF5 - Jika kode ada kesalahan pesan kesalahan akan
muncul di bagian bawah menu
24Tampilan VC
Tampilan Visual C Win32 Concole Application
25Cara menjalankan C dengan GCC di Linux
- Langkah
- Ketikkan kode program C dengan salah satu editor
ASCII di linux, seperti vi, joe, emacs, pico,. - Setelah selesai mengetik kode program, simpan dan
beri nama dengan exstention C, misal Program1.C - Jika hanya ingin meng-compile kode program
lakukan dengan - gcc c program1 program1.c
- Jika ingin meng-compile sekaligus me-Link kode
program lakukan dengan perintah - gcc program1.c o program1
- atau
- gcc o program1 program1.c
- Jika tidak ada kesalahan program dapat dijalankan
dengan perintah - ./program1
26Error Messages(Pesan Kesalahan)
- Kode program (source code) yang belum sesuai
dengan aturan-aturan C, jika di-compile atau
di-link akan memberikan pesan kesalahan tertentu
sesuai dengan jenis kesalahannya - Jenis pesan kesalahan
- Warnings A problem that can be overlooked.
- Compile-time warnings
- TLINK warnings
- TLIB warnings
- Errors A problem that should be fixed such as a
missing declaration or a type mismatch. - Compile-time errors
- TLINK errors
- TLIB errors
- MAKE errors
- Run-time errors
27- Fatal Errors A problem of critical nature that
prevents execution from continuing. - Compile-time fatal errors
- TLINK fatal errors
- MAKE fatal errors
- Dari sisi lain jenis kesalahan juga dapat
dibedakan seperti - Compile-Time Error
- Linking Error
- Run-Time Error
- Umumnya compiler C akan mendaftarkan semua
runtunan kesalahan yang terjadi yang diakibatkan
oleh setiap sebuah kesalahan. Pemberitaan
kesalahan beruntun seperti ini harus diamati
dengan cermat untuk dapat memperbaiki kesalahan
tersebut dengan cepat.
28Eksperimen Pertama Pemrograman C
- Aktifkan editor pada Compiler C yang anda miliki
(Klick menu file-new-editor text) - Harap perhatikan pengetikan huruf kecil dan
huruf besar harus sama!
int A int B,C int main() A5B3 CAB
return(0)
- Simpan dengan nama file hitung.c
- Compile (AltF9) kode tersebut untuk menghasilkan
file hitung.obj, buktikan dengan melihatnya
melalui prompt DOS/windows explorer - Link (Compile-Link) kode file objek tersebut
untuk menghasilkan file hitung.exe - Dari prompt DOS atau windows explorer catat besar
file-file berikut - Hitung.c bytes
- Hitung.obj bytes
- Hitung.exe bytes
Bersambung
29- Jalankan program dari prompt DOS dengan
mengetikkan hitung.exe enter atau dari Borlan
C dengan CtrlF9. - Perhatikan bahwa program belum menghasilkan apa
pun di layar - Modifikasi kode program di atas menjadi seperti
berikut
include ltstdio.hgt int A int B,C int main()
A5B3 CAB printf(Hasil jumlah d
\n,C) return(0)
- Compile dan Link kembali program (secara singkat
lakukan langsung dengan Run-Run). Perhatikan jika
anda melakukannya dari menu Borlan C hasil
program tidak akan terlihat. Untuk itu tambahkan
di akhir program dengan perintah getchar()
(sebelum return 0) - Hasil program akan tampak di layar
Hasil jumlah 8
30Lanjutan Eksperimen
- Program yang baru anda cobakan belum bersifat
interaktif sebab input variabel A dan B langsung
dimasukkan di dalam kode program. Untuk
menjadikan program interaktif tambahkan perintah
Scanf() sehingga kode program menjadi seperti
berikut
include ltstdio.hgt int A int B,C int main()
//A5B3 printf("Masukkan nilai A ")
scanf("d",A) printf("Masukkan nilai B ")
scanf("d",B) CAB printf(Hasiljumlah d
\n,C) getchar() return(0)
31- Simpan kembali program, jalankan dan catat
hasilnya ! - Tanda // digunakan sebagai komentar untuk C
tetapi dikenal juga tanda komentar khusus C
adalah / ./. - Untuk membersihkan layar setiap program
dijalankan, tambahkan fungsi clrscr() di tempat
yang sesuai. - Untuk menentukan posisi kursor gunakan fungsi
gotoxy(), untuk memberikan efek warna gunakan
fungsi textcolor() , textbackground() dengan
pencetakan cprintf(). Fungsi-fungsi ini
deklarasinya berada pada header conio.h
- Statement Pengulangan pada C dapat menggunakan
- While (.)
- Statement yang diulang
- Untuk menghilangkan statemen return 0 dalam
fungsi main type kembaliannya dganti dari int
menjadi void void main()
32Selanjutnya lengkapi kode program tersebut
menjadi seperti berikut Aktifkan fungsi
fflush() jika getchar() tidak berfungsi !
/ Nama File hitung.c / include
ltstdio.hgt include ltconio.hgt void main() int
A,B,C char k k'y' while(k'y')
clrscr() gotoxy(1,3) textcolor(14)cprintf("
Masukkan nilai A ") scanf("d",A)
//fflush(stdin) gotoxy(1,4)
textcolor(12)cprintf("Masukkan nilai B ")
scanf("d",B) //fflush(stdin) CAB
gotoxy(1,5) textcolor(9)printf("Hasil jumlah
d \n",C) gotoxy(1,8) printf("Hitung lagi
yt ? ") fflush(stdin) kgetchar()
33Latihan
- Lengkapi kode program di atas untuk memberikan
hasil pengurangan, perkalian, pembagian, dan
pangkat ! - Buatlah program C untuk menghitung persamaan
kuadrat dengan rumus ABC, dengan contoh kode
programnya dalam pascal seperti berikut - program rumus_abc
- uses crt
- var a,b,c integer
- d,x1,x2 real
- begin
- clrscr
- write('Masukkan nilai koefisien a ')readln(A)
- write('Masukkan nilai koefisien b ')readln(B)
- write('Masukkan nilai koefisien c ')readln(C)
- dbb-4a
- if dgt0 then
- begin
- x1(-b-d)/(2a)
- x2(-bd)/(2a)
- writeln
- writeln('Penyelesaian ')
34- Cobakan program-program di atas (hitung.c dan
rumusABC.c) menggunakan Gcc di linux dengan
menghilangkan fungsi-fungsi dari header conio.h - Catat pesan-pesan kesalahan yang pernah muncul
selama anda ber-eksprimen dan latihan, baik pada
Turbo C mapupun pada Gcc Linux