Pendahuluan
Sejarah
C dibuat dan diimplementasikan pertama kali tahun 1970-an oleh Dennis Ritchie pada komputer DEC PDP-11 menggunakan sistem operasi Unix. Karena bahasa C terdiri dari banyak versi (misal C arduino , C codevision dll) maka dibuat standar yaitu ANSI-C.
Kelebihan Bahasa C- Bahasa C’ tersedia hampir tersedia untuk berbagai prosessor, baik mikrocontoller dan microprosssor .
- Kode bahasa C’ bersifat portabel. Suatu aplikasi yang ditulis dengan bahasa C untuk suatu prosessor tertentu dapat digunakan di prosessor lain hanya dengan sedikit modifikasi.
- Struktur bahasa yang baik
- Mudah dipelajari
- Memudahkan pembuatan program
- Memudahkan pelacakan program (debugging)
- Dibandingkan dengan bahasa mesin atau assembly, C jauh lebih mudah dipahami. C berorientasi pada permasalahan, bukan pada mesin.
- Dapat memanipulasi data dalam bentuk bit atau byte.
- Memungkinkan untuk memanipulasi alamat dari suatu data atau pointer.
C Compiler
C Compiler akan membaca seluruh source code dan mengkonversi kedalam object code (hasil translasi source code suatu program ke dalam bentuk yang dapat dieksekusi secara langsung oleh komputer).
Source code sudah tidak digunakan setelah dilakukan kompilasi oleh compiler.
object code juga sering disebut dengan binary code atau machine code.
C Compiler antara lain :
- untuk prosesor x86 : Gnu C (GCC), Turbo C dll.
- untuk microcontroller AVR : AVR-GCC , codevisionAVR, C Arduino
- dll
- Ekspresi,
- Statemen,
- Blok statement
- Blok fungsi
Program C adalah berisi sekumpulan fungsi-fungsi. Eksekusi program akan diawali dengan mengeksekusi fungsi main(). Program bahasa C di compile menggunakan C Compiler .
- Program C adalah berisi sekumpulan fungsi-fungsi.
- Minimal mengandung 1 fungsi utama yang bernama main(). Eksekusi program akan diawali dengan mengeksekusi fungsi main().
- Setiap fungsi terdiri atas satu atau beberapa pernyataan, untuk menyelesaiakan tugas khusus.
- Bagian pernyataan fungsi atau tubuh fungsi diawali dengan tanda kurung kurawal buka ({) dan diakhiri tanda kurung kurawal tutup (}).
- include <stdio.h> adalah header file yg berisi fungsi fungsi standart input output yg diikut sertakan ke dlm program.
- semua charakter di dlm /* ... */ atau setelah // akan di abaikan oleh compiler, ini digunakan untuk memberi keterangan saja .
PreProsessor Directive melakukan arahan sebelum proses(compile), maksudnya adalah sebelum code program bahasa C dicompile maka ada proses yg harus dilakukan oleh preprosesor directive (#define, #include, #pragma dll) antara lain Menggabungkan file header , misal :
#include <sddio.h>
#include "file_header_saya.h"
Mengganti text atau mendefinisikan macro,
misal
#define BAUD_RATE 9600,
#define JUMLAH(a,b) a+b
set up pengkondisian kompilasi ,
misal #if BUFFER_SIZE < 256 char index ; #else int index ; #endif
Karena preprosessor directive bukan bagian dari bahasa C maka tidak diakhiri tanda ; (titik koma).
VARIABLE DAN KONSTANTA
Variabel adalah memori penyimpanan data yang nilainya dapat diubah-ubah. variable disimpan di RAM Konstanta adalah memori penyimpanan data yang nilainya tidak dapat diubah setelah program di compile. Konstanta disimpan di memory program. Keyword berikut ini tidak boleh dijadikan nama variable atau konstanta :
-auto -double- int -long-break -else -switch-case -enum -register -typedef-char -extern -return -union-const -float -short -unsigned-continue -for -signed -void-default -goto -sizeof -volatile-do -if -static -while
VARIABLE SCOPE
Global variable dan constant dapat diakses di seluruh bagian program. Local variable dan constant hanya dapat diakses didalam fungsi tempat dideklarasikannya. Type Variable Karena memori microcontroller relatif terbatas maka kita harus menggunakan type memory yg sesuai kebutuhan. . CONTROL STATEMENT
- While Loop
- Do/While Loop
- For Loop
- If/Else
- SWITCH/CASE
- BREAK, CONTINUE,AND GOTO
#include "stdio.h" int main(void) { int i; for(i; i<7; i++) { if(i==3) continue; printf(%d, i ) } } [/code] maka yg di tampilkan 1 2 4 5 6 , angka 3 tidak ditampilkan .
OPERATOR DAN EXPRESSI
- Operator Penugasan ( "=" )
- Operator Arithmetic :
- Operator Logika
- Operator relasional
- increment
- deccrement
- Compound
- kondisonal Expressi
- Operator geser bit
jumlah kedua angka tsb adalah 7•Scanf digunakan untuk mengambil input data •Dalam scanf harus ditentukan alamat variables (&i, &j) yang akan menerima input data •Sebelum menentukan variables harus ditentukan penentu formatnya •Misal integer menggunakan %d sejumlah variables Perlu diingat dalam menggunakan scanf Ditentukan alamat variable, seperti &i, &j Ditentukan penentu format sejumlah variable yang digunakan dalam scanf FUNGSI OUTPUT STDANARD int printf(char* format, arg1, arg2,...); int sprintf(char* string, char* format, arg1,arg2,...); int fprintf(FILE* fp, char* format, arg1, arg2,...); dengan format specifiers : %d - int (sama dgn %i) %ld - long int (sama dgn %li) %f - float %lf - double %c - char %s - string %x - hexadecimal contoh [code cpp="css"] #include "stdio.h" int main(void) { int a; printf("masukan angka: "); scanf("%d", &a); printf("angka yg diinput= %d\n", a); return 0; } [/code] MENGAKSES FILE Langkah langkah pengaksesan file : 1. Buat pointer ke struct File , misal : File *pointer_file 2. file dibuka dgn fungsi fopen(namafile,mode) misal : fopen(“namafile.txt”,”r”) mode akses file antar lain: “r” artinya file hanya untuk dibaca . “w” artinya buat file baru untuk ditulis “a” artinya isi file bisa ditambah “r+” artinya file bisa ditulis dan dibaca “w+” artinya file bisa dibaca dan ditulis. jika ada file yg sama akan di replace. “a+” artinya file akan dibaca atau ditulis. jika file tdk ada file baru akan dibuat. 3. file dibaca / ditulis /edit dgn fungsi fungsi : fputc,fgetc,fputs,fgets,fscanf, fprintf, fseek, putc, getc, putw . misal : fgetc(pointer_file) , atau fgets(string_bufer, ukuran buffer, pointer_file) 4. setelah selesai dibaca/ditulis kemudian file di tutup. misal fclosed(pointer_file) mudah bukan, nanti kita lihat contohnya dibawah membaca data string dari file dgn fget
deklarasi: char *fgets(char *str, int n, FILE *stream)contoh program: [code cpp="css"] /* buatlah file filetest.txt misal isinya spt ini: 0 1 0 1 2 0 2 0 3 */ #include #include #include #include #include main() { FILE *fp; char baris[20], string1[5], string2[5], string3[5]; int i; fp=fopen(“filetest.txt”,”r”); if (fp==NULL) { printf(“file tdk bisa dibuka\n”); exit(1); } printf(“\n”); printf(“==========================\n”); printf(“isi file : \n”); printf(“==========================\n”); // baca tiap baris sampai fp ga ada char/null i= 0; while (fgets(baris,sizeof baris,fp)!=NULL) { printf(“%s”,baris); // mencetak string baris ke layar i++; } printf(“\n”); printf(“==========================\n”) return(0); } [/code]
Tidak ada komentar:
Posting Komentar