Showing posts with label C. Show all posts
Showing posts with label C. Show all posts
POINTER (STRUKTUR DATA)

POINTER (STRUKTUR DATA)

Pointer ( variabel penunjuk) merupakan suatu ariabel yang berisi alamat memori dari suatu variabel lain. Alamat ini merupakan lokasi dari variabel lain di dalam memori. Dengan kata lain, pointer berisi alamat dari variabel yang mempunyai nilai tertentu.

OPERATOR POINTER
Suatu pointer dapat berisi alamat dari suatu variabel lain dan untuk dapat mengakses niali yang ada di dalam variabel berpointer secara langsung dapat dilakukan dengan menggunakan operator. Ada dua operator pointer ysng disediaka oleh Borland C++ yaitu:

1. OPERATOR DEFERENCE (&)
Pada umumnya kita tidak dapat menentukan dimana variabel akan ditempatkan dalam memori karena penempatan suatu variabel ditentukan oleh sistem operasi. Untuk suatu keperluan tertentu terkadang kita harus mengetahui alamat suatu variabel di dalam memori, untuk memperoleh alamat dari suatu variabel dapat kita lakukan dengan bentuk:

Nama_var_pointer = &variabel;

2. OPERATOR REFERENCE (*)
Digunakan untuk mengakses secara langsung nilai yang terdapat di dalam alamat yang merupakan nilai dari variabel pointer. Dilakukan dengan menambah operator Reference (*) di depan nama variabel, agar dapat menerjemahkan nilai sebenarnya dari suatu variabel. Sebagai contoh, misalkan deklarasi sebagai berikut:

int x=8,y;
int *xptr;

DEKLARASI POINTER
Seperti halnya variabel yang lain, variabel pointer juga harus dideklarasikan terlebih dahulu sebelum digunakan.Bentuk umumnya:

tipe_data *nama_var_pointer;

POINTER DAN ARRAY
Pointer dan Array mempunyai hubungan yang dekat. Secara internal array juga menyatakan alamat , dimana pengenalan array sama dengan alamat pada elemen pertama pada array.

POINTER PADA PINTER
Variabel pointer menunjukan suatu variabel, Disamping itu suatu variabel pointer juga dapat menunjukan ke variabel pointer lainya. Dalam hal ini dilakukan dengan cara menambahkan operator reference[*] pada variabel yang akan ditunjuk.
Contoh, misalkan kita mempunyai deklarasi sebagai berikut ini:

int Var_x;
int *xPtr1;
int **xPtr2;

Artinya:
a. Var_x adalah variabel bertipe int
b. *xPtr1 adalah pointer yang mennjukan ke data bertipe int
c. **xPtr2 adalah variabel pointer yang menunjuk kepointer int
ALGORITMA PROGRAM MENGHITUNG RATA-RATA DARI SEJUMLAH DATA

ALGORITMA PROGRAM MENGHITUNG RATA-RATA DARI SEJUMLAH DATA


  1. Start
  2. Read int x,data[10];float sum=0, average
  3. x=1 to 10
  4. Memeriksa apakah nilai counter lebih kecil dari nilai akhir. Jika benar masuk ke no. 5, jika salah pengulangan akan berhenti dan masuk ke no.9
  5. Print "masukkan data ke - x"
  6. input data[x]
  7. sum = sum + data[x]
  8. kembali  ke no.4
  9. Average = sum/10
  10. Print "nilai rata-rata dari 10 daa diatas = average"
FLOWCHART PROGRAM MENGHITUNG RATA-RATA DARI SEJUMLAH DATA

KEYWORD DALAM BAHASA C


Ada beberapa keyword dalam bahasa C, diantaranya:


KEYWORD KETERANGAN
Auto Keyword auto digunakan untuk membuat variabel lokal. Namun demikian keyword ini jarang digunakan
Break Digunakan untuk keluar dari fo, for atau loop while dengan melewati kondisi loop yang normal. Keyword ini juga digunakan untuk keluar dari perintah switch
Switch Perintah switch adalah bagian dari bebrapa perintah yang daa pada C. Perintah ini digunakan untuk pembuatan rute satu dengan bebrapa cara yang berbeda. Tiap keberhasilan perintah dapat berasal dari satu perintah sampai beberapa perintah, panjang porsi default dapat dipakai. Switch akan bekerja dengan pengontrolan "control-var" terhadap konstanta. Jika telah diketemukan suatu keserasian, makan pelaksanaan perintah tersebut berhasil. Jika urutan perintah yang berhubungan dengan case yang sesuai dengan nilai dari control-var yang tidak berisi break, maka suatu eksekusi perintah akan berlanjut ke case selanjutnya, dan akan terus berjalan sampai perintah break diketemuan atau sampai perintah switch berakhir.
Case perintah yang ada dalam perintah switch untuk membandingkan argumen dan parameter
Char Tipe data yang digunakan untuk membuat karakter variasi
Const berasal dari kata "constant" modifier "const" akan mengatakan pada compiler bahwa variabel yang mengikuti idak dapat dimodifikasi, namun demikian saat dideklarasikan variable const dapat diberi nilai awal
Continue Digunkan untuk menyediakan porsi code pada suatu loop dan memaksa "conditional test" untuk ditampilkan
Default digunakan pada perintah switch yang memberi tanda default blok dari code yang akan dibuat jika tidak ada kecocokan pada switch
Do Merupakan salah satu dari konstruksi loop yang ada pada C. Jika hanya satu perintah yang diulang, maka tanda kurung tidak diperlukan. Tanda kurung disini hanya memperjelas suatu perintah. Loop do adalah satu satunya perintah dalam C yang selalu minimal satu interasi, sebab suau ondisi akan diuji pada bagian bawah loop. Loop do biasanya dipakai untuk membaca file disk
Double Adalah suatu penentu tipe data yang digunakan untuk membuat "double-percision" variabel "floating-point"
If Suatu fungsi yang mendeklarasikan sebuah persyaratan. Jika persyaratan itu tidak terpenuhimaka perintah tidak akan dijalankan atau menjalankan perintah else
Else Suatufungsiyang digunkan sebagai alternatif dalam fungsi if
Enum Digunakan untuk membuat enumerasi(enumeration). Enumerasi adalah suatu daftar yang sederhana dari konstanta integer yang diberi nama. Oleh sebab itu, tipe data enum ini menentukan apa yang dibandingkan dalam daftar tersebut
Extern Tipe data modifier yang digunakan untuk memberitahu compiler bahwa suatu variabel telah dibuat li lai tempat daam program. Tipe ini sering digunakan pada kata penghubung dengan susunan file terpisah yang memperlakukan data global yang sama serta digabungkan bersama. Pada dasarnya extern ini memberitahu compiler tentang tipe variabel tanpa harus membuat variabel itu sendiri
Float Tipe data apecifier yang digunakan untuk membuat variabel floating-point
For Loop yang memungkinkan pemberian huruf awal dan kenaikan secara otomatis dari variabel counter
Goto Akan menyebabkan program melompat pada lael yang ditentukan dengan perintah goto
int Tipe data specifieryang digunakan untuk membuat variabel integer (bilangn bulat)
Long Tipe data modifier yang digunakan untuk membuat variabel integer menjadi double-length
Register Adalah modifier penyimpanan yang digunakan untuk meminta agar satu pemasukan pada variabel dioptimalkan kecepatanya. Secara tradisional register hanya dapat digunakan pada variabel integer dan karakter, register tersebut menyebabkan variabel-variabel tersebut disimpan dalam register CPU sebagai pengganti dari ditempatkannya pada memory. Standar ANSIC telah diperluas definisinya agar dapat memasukkan semua tipe data. Namun demikian data selain integer dan karakter biasanya tidak dapat disimpan di CPU register. Untuk tipe data yang lain baik berupa cache memori akan dipakai yang kemudian meminta register untuk disimpan. Register hanya dapat digunakan pada variabel lokal
Retur Perintah return akan memaksa suatu pengembalian dari fungsi dan dapat digunakan untuk mentransferkembali suatu angka pada return pemanggilan
Short Modifier tiper data yang digunakan untuk mendeklarasikan integer pendek
Signed Tipe modifier signed digunakan untuk menentukan suatu tipe dana signed-char
Sizeof Akan mengembalikan panjang variabel tipe yang mendahuluinya. Jikan yang mendahului adalah suatu variabel maka tanda kurung bersifat optional
Static Tipe data modifier yang digunakan untuk menyuruh compiler agar membuat penyimpanan yang permanen untuk variabel lokal yang mendahuluinya. Hal ini memungkinkan suatu variabel yang telah ditentukan mempertahankan nilai antara pemanggilan fungsi
Struc digunakna untuk membuat variabel kompleks atau konglomerat, yang disebut :structure", yang terbuat dari satu elemen tipe data
Typedef keyword typedef berguna untuk membuat alias dari suatu tipe data
Union Union digunakan untuk menunjukkan dua variabel atau lebih pada lokasi memori yang sama.
Unsigned "unsigned" adalah tipe data modifier yang memerintahkan compiler untul< menghapus tanda bit dari suatu integer dan menggunakan seluruh bit untuk keperluar arithmetic. Hal semacam ini menyebabkan ukuran integer terbesar menjadi dobel tapi hanya terbatas pada angka-angka positif saja.
Void Tipe specifier "void" pada pokoknya digunakan untuk secara jelas mendeklarasikan fungsi yang tidak mengembalikan suatu nilai (dalam arti penuh), tipe ini juga digunakan untuk membuat pointer "void" (pointer pada "void"), yaitu pointer generic yang dapat menunjukkan beberapa tipe object.
Volatile Modifier "volatile" digunakan untuk memberitahu Compiler bahwa suatu variabel mungkin telah mempunyai suatu isi yang telah dipilih dengan cara yang tidak ditentukan oleh suatu program. Contoh, variabel-variabel yang diubah dengan hardware seperti "realtime clock", 'Interrupt" atau input-input yang lain, harus dinyatakan sebagai volatile
While Adalah suatu loop. Jika suatu perintah tunggal adalah object dari "while", maka tanda kurung dapat dihilangkan, "while" akan menguji kondisinya pada bagian atas suatu loop. Oleh sebab itu jika kondisinya salah untuk memulai,maka loop tidak akan berjalan, meskipun hanya sekali. Kondisi tersebut mungkin dapat berupa suatu ekspresi.