Konsep Pemrograman. Bab 11. Pointer 1. Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006 PENS-ITS. Umi Sa adah

dokumen-dokumen yang mirip
A. TUJUAN 1. Menjelaskan tentang konsep dari variabel pointer. zzzz. Address. Gambar 8.1 Variabel pointer px menunjuk ke variabel x

Pointer 1 A. TUJUAN PEMBELAJARAN

POINTER I. Oleh : Mike Yuliana PENS-ITS

PRAKTIKUM 11 POINTER 1

Konsep Pemrograman. Bab 12. Pointer 2. Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006 PENS-ITS. Umi Sa adah

BAB VIII POINTER. Tujuan :

DIKTAT MATA KULIAH PEMROGRAMAN I BAB XI POINTER

main() { int y, x = 87; /* x & y bertipe int */ int *px; /* var pointer yg menunjuk ke data yang bertipe int */

POINTER DASAR PEMROGRAMAN

POINTER II. Oleh : Mike Yuliana PENS-ITS

PRAKTIKUM 11 POINTER 1

Konsep Pemrograman. Bab 13. Pointer 3. Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006 PENS-ITS. Umi Sa adah

MAKALAH POINTER PADA BAHASA C

xxxx alamat Praktikum 11 POINTER

Struktur Dasar Bahasa C Tipe Data Dalam bahasa C terdapat lima tipe data dasar, yaitu :

Praktikum 1. Suatu array berdimensi satu dideklarasikan dalam bentuk umum berupa : tipe_data nama_var[ukuran];

ALGORITMA (2) Mengupas Kentang

Algoritma dan Struktur Data. Pertemuan 5 Pointer

Algoritma Pemrograman. Fery Updi,M.Kom

BAB 10 POINTER 5.1 Tujuan 5.2 Pengertian Pointer Perubah dinamis pointer

POINTER. Tim Alpro Teknik Informatika

POINTER. Pemrograman Bahasa C++

Pointer 2 A. TUJUAN PEMBELAJARAN. 1. Memahami tentang Pointer to Array 2. Memahami tentang Pointer to String

POINTER. Praktikum 10 (3/5) A. TUJUAN 1. Menjelaskan tentang Pointer to Array 2. Menjelaskan tentang Pointer to String

Algoritma dan Struktur Data. Pointer Pada Struct

Achmad Solichin.

Pointer. Yuliana Setiowati

B. DASAR TEORI B.1 Array Suatu array berdimensi satu dideklarasikan dalam bentuk umum berupa : tipe_data nama_var[ukuran];

pada program di atas, akan ditampilkan alamat memori dari variabel x, bukan nilai x.

Bab 2. Dasar-Dasar Pemrograman C

ALGORITMA DAN PEMROGRAMAN 2. 3 SKS By : Sri Rezeki Candra Nursari

Achmad Solichin.

Pemrograman Dasar C. Minggu 9

POINTER. Tim Alpro Teknik Informatika

Konsep Pemrograman. Bab 8. Fungsi 2. Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006 PENS-ITS. Umi Sa adah

MODUL. Pointer. Modul Praktikum C++ Dasar Pemrograman Komputer JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK

elemen Dasar Bahasa Pemrograman C

PENGENALAN BAHASA C. A. Struktur Kode Program dalam Bahasa C Secara garis besar, suatu kode program dalam bahasa C memiliki struktur umum seperti ini:

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

Tipe Data Dasar. Berdasarkan jenisnya, data dapat dibagi menjadi lima kelompok dinamakan tipe data dasar, yaitu:

STRUCTURE. Structure

Tipe Data Dasar. Data bisa dinyatakan dalam bentuk konstanta atau variabel.

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET BAHASA PEMROGRAMAN Fungsi : Passing Parameter by Value & Semester 3

OPERATOR BAHASA C. Obyektif : 4. Mengetahui macam-macam operator dalam Bahasa C. 5. Mengetahui dan dapat menggunakan format pada tiap tipe data..

Fungsi, Parameter, Rekursi

A. TUJUAN 1. Memecah program dalam fungsi fungsi yang sederhana. 2. Menjelaskan tentang pemrograman terstruktur.

Bab 3. Decision 1 (Pengambilan Keputusan)

Dasar-dasar Pemrograman C DASAR PEMROGRAMAN & ALGORITMA

KARAKTER DAN STRING, ARRAY, STRUCT DAN REVIEW PADA BAHASA C

DASAR PEMROGRAMAN. PENGANTAR BAHASA C ( Sejarah, Struktur Pemrograman, Tipe Data, Operator ) Djoko Soerjanto, M.Kom

ALGORITMA & PEMROGRAMAN II ARRAY

PENGENALAN BAHASA C. Praktikum 3

Algoritma dan Pemrograman Lanjut. Pertemuan Ke-10 Pointer 1

Konsep Pemrograman. Bab 14. Struktur 1. Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006 PENS-ITS. Umi Sa adah

PRAKTIKUM 12 POINTER 2

Pertemuan 04. Pemrograman Dasar 2012

PRAKTIKUM 2. perubah (variabel), konstanta, fungsi, atau obyek lain yang didefinisikan oleh

Laporan Praktikum TMD02 Algoritma dan Struktur Data dengan C. Coding 1. NIM/ No. Reg. : : Mhd. Syarif : : Blog

Data bisa dinyatakan dalam bentuk konstanta atau variabel.

ALGORITMA DAN STRUKTUR DATA

Tipe Data. Adri Priadana

TUGAS TEORI ALGO LANJUT

Pemrograman Dasar C. Minggu 10

Pointer (Penunjuk) Modul 6

Pengenalan Struktur Data. Farah Zakiyah Rahmanti 2014

ARRAY. Karakteristik

Tipe Data dan Operator

Algoritma Pemrograman. Fery Updi,M.Kom

01. Review Array, Pointer dan Struktur

MODUL 10 Fungsi 10.1 Kompetensi 10.2 Alat Dan Bahan: 10.3 Ulasan Teori: Dasar Fungsi Deklarasi Fungsi

Tipe Data, Variabel, Input/Output

PRAKTIKUM 12 POINTER 2

Fungsi DASAR PEMROGRAMAN

BAB II DASAR-DASAR PEMROGRAMAN C

MODUL DUA VARIABEL DAN TIPE VARIABEL

Fungsi (Function) Pendahuluan. Objektif. Bahan Bacaan

MI, KA-D3, SIA, SIB. ADI, S.Kom.

POINTER STACK DAN QUEUE. Institut Teknologi Sumatera

Array LOGO. Pendidikan Teknik Elektronika FT UNY. Muh. Izzuddin Mahali, M.Cs.

Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN

/* File program : tukar1.c Untuk melihat pengaruh pemanggilan nilai pada fungsi untuk penukaran dua data */

KONSEP DASAR BAHASA C

Fungsi Lanjut DASAR PEMROGRAMAN

Identifier dan Tipe Data

Bahasa C-M6 By Jamilah, Skom 1

PERTEMUAN V PEMROGRAMAN TERSTRUKTUR DENGAN VISUAL C Setiap bahasa C mempunyai satu fungsi dengan nama main (program utama).

DISUSUN OLEH BAB XI POINTER. alamat. memori. sepenuhnya. pointer. dan Pointer. menggunakan. menyebabkan. Alamat. untuk.

Algoritma dan Struktur Data. Ramos Somya, S.Kom., M.Cs.

PERTEMUAN II Tipe Data, Variabel, Konstanta, Operator

Operator Precedence dan Associativity DASAR PEMROGRAMAN. JULIO ADISANTOSO Departemen Ilmu Komputer IPB. Pertemuan 2

Modul 1 Dasar Dasar Bahasa Pemrograman C

Pointer dan Array Dinamik. IF2121 / Algoritma dan Struktur Data Sem /2018

LARIK (ARRAY) Latar Belakang Array

P3 Dasar Struktur Data TIF42/SIF42

Praktikum 3 DASAR-DASAR PEMROGRAMAN C

Array 1 A. TUJUAN PEMBELAJARAN

Seluruh elemen di dalam struktur array mempunyai tipe data yang sama. Random Access

Ekspresi, Pernyataan & Operasi Aritmetika/Logika

Algoritma Pemrograman 2B (Pemrograman C++)

ARRAY & POINTER. Listing 8.1. EXPENSES.C demonstrates the use of an array. AP3: Array & Pointer

Transkripsi:

Bab 11. Pointer 1 Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006

Overview Konsep Dasar Pointer Deklarasi Variabel Pointer Mengatur Pointer agar Menunjuk ke Variabel Lain Akses INDIRECT melalui pointer

Konsep Dasar Pointer Pointer adalah variabel yang khusus digunakan untuk menampung address. Pointer sering dikatakan sebagai variabel yang menunjuk ke obyek/variabel lain. Kenyataan sebenarnya, variabel pointer berisi alamat dari suatu obyek lain (yaitu obyek yang dikatakan ditunjuk oleh pointer). Misalnya: px adalah variabel pointer x adalah variabel yang ditunjuk oleh px. Kalau x berada pada alamat memori 1000, maka px akan berisi 1000

Deklarasi Variabel Pointer Pointer dideklarasikan dengan bentuk sbb: tipe_data *nama_variabel; tipe_data dapat berupa sembarang tipe yang sudah dibahas pada bab-bab sebelumnya, maupun bab-bab berikutnya. nama_variabel adalah nama dari variabel pointer. Jika dideklarasikan : int *px; ànama var =px; tipenya = pointer to int àmenyatakan bahwapx adalah variabel pointer yang menunjuk ke suatu data tertentu yang bertipe int

Mengarahkan Pointer ke Variabel Lain Konsep Pemrograman Mula-mula pointer diisi dengan alamat dari variabel yang akan ditunjuk. Untuk menyatakan alamat dari suatu variabel, digunakan operator&(operator alamat, bersifat unary) yang ditempatkan di depan nama variabel. Jika dideklarasikan : int *px, x = 10; Maka&x berarti alamat dari variabel x. px = &x; berarti bahwapx diberi nilai berupa alamat dari variabel x. Setelah pernyataan tersebut dieksekusi barulah dapat dikatakan bahwa px menunjuk ke variabel x.

Hasilnya : Mengarahkan Pointer ke Variabel Lain Konsep Pemrograman Suatu lokasi/address yg telah ditunjuk oleh sebuah pointer, maka lokasi tsb value-nya bisa diakses baik secara DIRECT maupun INDIRECT melalui pointernya

Akses INDIRECT Konsep Pemrograman melalui pointer Pengaksesan tak langsung dilakukan dengan menggunakan operator indirection (tak langsung) berupa simbol*(bersifat unary). *px menyatakan nilai atau value dari variabel/data yang ditunjuk oleh pointerpx. Contoh int *px, x = 10, y; px = &x; y = *px; makayakan berisi10 yaitu nilai yang sama dengan nilaix

Akses INDIRECT Konsep Pemrograman melalui pointer ATURAN PEMBACAAN &x = alamat/address dari variabel x *px = nilai/value yang ada pada address/lokasipx àbaca ulang dengan cara menggantipx dengan value yang ada padapx (dalam contoh di ataspx berisi1000) àmerupakan cara akses indirect Keterangan: x adalah nama variabel yang bertipe int px adalah nama variabel yang bertipe pointer to int

Contoh #include <stdio.h> main() { int y, x = 87, *px; px = &x; y = *px; printf("alamat x = %p\n", &x); printf("isi px = %p\n", px); printf("isi x = %d\n", x); printf( *px = %d\n", *px); printf( Isi y = %d\n", y);

Akses INDIRECT Konsep Pemrograman melalui pointer Tipe variabel pointer dan tipe data yang ditunjuknya harus sejenis. Bila tidak sejenis, akan terjadi hasil yang tidak diinginkan

Contoh main(){ float *pu, nu; double u = 158.0; pu = &u; nu = *pu; printf("alamat dari u = %p\n", &u); printf("isi pu = %p\n", pu); printf("isi u = %lf\n", u); printf("nilai yang ditunjuk oleh pu = %f\n", *pu); printf("nilai nu = %f\n", nu);

Latihan Untuk setiap program di bawah ini, gambarkan ilustrasi alokasi memori dari setiap baris pernyataan yang diproses perkirakan hasil eksekusinya 1. main(){ int y, x = 87; int *px; px = &x; y = *px; printf("alamat x = %p\n", &x); printf("isi px = %p\n", px); printf("isi x = %d\n", x); printf("nilai yang ditunjuk oleh px = %d\n", *px); printf("nilai y = %d\n", y);

Latihan 2. main(){ int z = 20, s = 30, *pz, *ps; pz = &z; ps = &s; *pz += *ps; printf("z = %d\n", z); printf("s = %d\n", s); 3. main(){ char c = 'Q'; char *cp = &c; printf("%c %c\n", c, *cp); c = '/'; printf("%c %c\n", c, *cp); *cp = '('; printf("%c %c\n", c, *cp);

Latihan 4. main() { int x = 1, y = 2, *ip; ip = &x; y = *ip; *ip = 3; printf( x = %d, y = %d, x, y); 5. main(){ int i1, i2, *p1, *p2; i1 = 9; p1 = &i1; i2 = *p1 / 2 2 * 3; p2 = p1; printf("i1=%d,i2=%d,*p1=%d,*p2=%d\n",i1,i2,*p1,*p2);

Latihan 6. main() { int count = 10, *temp, sum = 7; temp = &count; *temp = 32; temp = *temp = count; sum = *temp * 4; printf("count = %d, *temp = %d, sum = %d\n", count,*temp, sum ); 7. main(){ int count = 13, sum = 9, *x, *y; x = &count; *x = 27; y = x; x = *x = count; sum = *x / 2 * 3; printf("count = %d, sum = %d, *x = %d, *y = %d\n", count,sum,*x,*y);