POINTER DASAR PEMROGRAMAN

dokumen-dokumen yang mirip
BAB VIII POINTER. Tujuan :

POINTER I. Oleh : Mike Yuliana PENS-ITS

MAKALAH POINTER PADA BAHASA C

xxxx alamat Praktikum 11 POINTER

DIKTAT MATA KULIAH PEMROGRAMAN I BAB XI POINTER

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

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

PRAKTIKUM 11 POINTER 1

POINTER II. Oleh : Mike Yuliana PENS-ITS

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

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

PRAKTIKUM 12 POINTER 2

PRAKTIKUM 12 POINTER 2

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

PRAKTIKUM 11 POINTER 1

void naikkan_nilai (int *x, int *y) { *x = *x + 2; *y = *y + 2; }

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

Pointer. Yuliana Setiowati

Achmad Solichin.

POINTER. Pemrograman Bahasa C++

Pointer 1 A. TUJUAN PEMBELAJARAN

BAB 10 POINTER 5.1 Tujuan 5.2 Pengertian Pointer Perubah dinamis pointer

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

Tipe Data. Adri Priadana

1. Mempelajari konsep dasar array, array ganda, pengiriman array ke fungsi dan string 2. Membuat program menggunakan array, array ganda

8. Pointer. S. Indriani L, M.T

Pengenalan C++ Oleh : Dewi Sartika

Fungsi Lanjut DASAR PEMROGRAMAN

Fungsi, Parameter, Rekursi

Fungsi DASAR PEMROGRAMAN

ALUR PROGRAM. SELEKSI KONDISI Statement If a. Bentuk If tunggal sederhana Sintaks : if ( kondisi ) statement ;

A. TUJUAN 1. Menjelaskan tentang prinsip dasar fungsi. 2. Menjelaskan tentang.parameter formal dan parameter aktual

ALGORITMA DAN STRUKTUR DATA POINTER DAN FUNCTION

Algoritma Pemrograman 2B (Pemrograman C++)

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

PRAKTIKUM 7 FUNGSI 1

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

BAB V FUNGSI Tujuan : 5.1 Dasar Fungsi

Algoritma dan Struktur Data. Pertemuan 5 Pointer

E STRUKTUR DATA & E PRAKTIK STRUKTUR DATA. Pointer & Function. Alfa Faridh Suni, S.T., M.T. PTIK

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

Algoritme dan Pemrograman

Fungsi : Dasar Fungsi

ARRAY. Karakteristik

MODUL V POINTER DAN STRING

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

MENGENAL POINTER. Mengetahui Alamat variabel. Output :

01. Review Array, Pointer dan Struktur

Algoritma Pemrograman. Fery Updi,M.Kom

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

KONSEP DASAR. menyusunnya menjadi potongan-potongan mudah untuk ditangani dibanding. conquer.

Fungsi DASAR PEMROGRAMAN

FUNCTION (FUNGSI) LOGO. Pendidikan Teknik Elektronika FT UNY. Muh. Izzuddin Mahali, M.Cs.

Fungsi 1 DASAR PEMROGRAMAN

Algoritma Pemrograman. Fery Updi,M.Kom

VIII MANIPULASI STRING

POINTER. Algoritma dan Pemrograman Tahar Agastani Teknik Informatika UIN Overview. Definisi Pointer Operasi Pointer Pointer dan Argumen Fungsi

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 LAB SHEET BAHASA PEMROGRAMAN Fungsi : Passing Parameter by Value & Semester 3

Modul Praktikum Bahasa Pemrograman 1

BAB VI BAHASA C Pendahuluan

Kelompok 10 Array. Nama :

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

ALGORITMA (2) Mengupas Kentang

ALGORITMA DAN STRUKTUR DATA

Mukhlidi Muskhir Modul 2

Pemrograman Dasar C. Minggu 9

A B C D E \0. Gambar Komposisi penyimpanan string dalam memori

Achmad Solichin.

BAB 5 PERULANGAN DAN ARRAY

Algoritma dan Struktur Data. Pointer Pada Struct


Bahasa C melengkapi fasilitas modular dengan menggunakan fungsi pada setiap SubProgram. Contoh pembagian program menjadi beberapa subprogram.

BAB 6 FUNGSI TUJUAN PRAKTIKUM

VARIABEL & TIPE DATA PEMROGRAMAN C++

BAB I SEKILAS TENTANG C

Tipe Data, Variabel, Input/Output

PRAKTIKUM 10 STRING A B C D E \0. Gambar 11.1 Komposisi penyimpanan string dalam memori

PENGENALAN BAHASA C. Praktikum 3

void tukar_xy(struct koordinat *pos_xy){ int z; z = (*pos_xy).x; (*pos_xy).x = (*pos_xy).y; (*pos_xy).y = z;

LATIHAN DAN KISI-KISI SOAL JURUSAN TELEKOMUNIKASI POLITEKNIK ELEKTRONIKA NEGERI SURABAYA

ARRAY DIMENSI SATU Setiap elemen array dapat diakses melalui indeks. Indeks array secara default dimulai dari 0.

Minggu ke-10 Pointer. Pendahuluan. Objektif. Bahan Bacaan

12/29/2011 ILKOM IPB 1. Algoritme dan Pemrograman. Address and Pointers. Pointer

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

Konsep Pemrograman. Bab 7. Fungsi1. Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006 PENS-ITS. Umi Sa adah

Program menjadi terstruktur Dapat mengurangi pengulangan kode program. Fungsi dapat diimplementasikan dalam tiga bentuk :

Bahasa C Array. Slide diambil dari MK Dasar-Dasar Pemrograman Fasilkom UI Dimodifikasi dan disesuaikan dngn kebutuhan pengajaran di PTI-Undiksha

BAB 5. KONDISI DAN ARRAY

String 1 A. TUJUAN PEMBELAJARAN

Array 1 A. TUJUAN PEMBELAJARAN

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

TUGAS TEORI ALGO LANJUT

Tabel Informasi. Hal di atas dapat dilakukan dengan menambah dan mengambil atribut identifier yang digunakan pada program, melalui tabel informasi.

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

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

STRING DASAR PEMROGRAMAN

STRUCTURE. Structure

PRAKTIKUM 9 ARRAY. ARRAY BERDIMENSI SATU Suatu array berdimensi satu dideklarasikan dalam bentuk umum berupa :

Transkripsi:

POINTER DASAR PEMROGRAMAN

Tujuan Setelah menyelesaikan bab ini, anda diharapkan dapat: Menjelaskan tentang konsep dari variabel pointer Menjelaskan tentang pointer array Menjelaskan tentang pointer string Menjelaskan tentang array dari pointer Menjelaskan tentang pointer sebagai parameter fungsi 2

Dasar Pointer Variabel pointer sering dikatakan sebagai variabel yang menunjuk ke obyek lain. Variabel pointer berisi alamat dari suatu obyek lain. Sebagai contoh, px adalah variabel pointer dan x adalah variabel yang ditunjuk oleh px. Kalau x berada pada alamat memori (alamat awal) 1000, maka px akan berisi 1000 3

Variabel Pointer px menunjuk ke variabel x xxxx 1000 px address px = &x; 1000? x 4

Deklarasi Variabel Pointer Bentuk umum: tipe_data *nama_variabel_pointer; Contoh: int *px; Operator tak langsung Mengatur pointer agar menunjuk ke variabel lain: px = &x; Mengakses isi suatu variabel melalui pointer: y = *px; 5

Variabel Pointer *px isi dari alamat memory yang ditunjuk variabel px. &x alamat memory dari variabel x. 6

Contoh #1 #include <stdio.h> Alamat x = 0012FF78 main() Isi px = 0012FF78 { Isi x = 87 int y, x = 87; Nilai px = 87 int *px; Nilai y = 87 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); } Isi dari pointer (alamat memory) 7

Analisa Pada program di atas, dua pernyataan px = &x; y = *px; sebenarnya dapat digantikan dengan sebuah pernyataan berupa y = x; Seandainya pada program di atas tidak terdapat pernyataan px = &x; namun terdapat pernyataan y = *px; mengakibatkan komputer tidak dapat dikendalikan (hang). 8

Contoh #2 #include <stdio.h> main() { int *pu; Tipe pointer dan obyek yang ditunjuk harus sejenis int nu; int u = 1234; pu = &u; nu = *pu; printf("alamat dari u = %p\n", &u); printf("isi pu = %p\n", pu); printf("isi u = %d\n", u); printf("nilai yang ditunjuk pu = %d\n", *pu); printf("nilai nu = %d\n", nu); } 9

Mengubah isi variabel pointer -Contoh#3 - #include <stdio.h> main() { int d = 100; int *pd; printf("isi d mula-mula = %d\n", d); pd = &d; *pd = *pd + 10; printf("isi d sekarang = %d\n", d); } Isi d mula-mula = 54.5 Isi d sekarang = 64.5 10

Pointer dan Array Array secara internal akan diterjemahkan dalam bentuk pointer. Deklarasi variabel: int tgl_lahir[3] = { 01, 09, 64 }; int *ptgl; Kemudian diberi instruksi: ptgl = &tgl_lahir[0]; maka ptgl akan berisi alamat dari elemen array tgl_lahir yang berindeks nol. Instruksi di atas bisa juga ditulis menjadi: ptgl = tgl_lahir; nama array tanpa tanda kurung menyatakan alamat awal dari array. 11

Contoh #4 /* Program : ptr6.c */ #include <stdio.h> main() { static int tgl_lahir[] = {16, 4, 1974}; int i, *ptgl; } ptgl = tgl_lahir; printf("nilai yang ditunjuk ptgl = %d\n", *ptgl); for (i=0; i<3; i++) printf(" %d\n", tgl_lahir[i]); Keterangan : tgl_lahir[i] bisa diganti dengan *(ptgl+i) atau *ptgl++ 12

Pointer dan String Pointer juga dapat digunakan untuk mendeklarasikan variabel string. Contoh: char *pkota = SEMARANG ; Hampir sama dengan: char kota[] = SEMARANG ; Tetapi sebenarnya tidak tepat sama. pkota adalah pointer (menyatakan alamat) yang menunjuk ke string SEMARANG, kota adalah array (array menyatakan alamat yang konstan, tak dapat diubah). 13

Contoh #5 /* Program : ptr4.c */ #include <stdio.h> main() { // pkota menunjuk konstanta string SEMARANG char *pkota = SEMARANG ; } printf( String yang ditunjuk oleh pkota = ); puts(pkota); // printf( %s\n, pkota) Hampir sama dengan sbb : char *pkota; char data [] = SEMARANG ; pkota = data; printf ( %c\n,*pkota); 14

Array dari Pointer (Array of Pointer) Suatu array bisa digunakan untuk menyimpan sejumlah pointer. Contoh : char *namahari[10]; Array namahari terdiri dari 10 elemen berupa pointer yang menunjuk ke data bertipe char. xxxx????? namahari Gambar Array pointer 15

Array of Pointer Cont. static char *namahari[] = { Senin, Selasa, Rabu, Kamis, Jumat, Sabtu, Minggu }; Pada contoh ini, namahari[0] berisi alamat yang menunjuk ke string Senin. namahari[1] berisi alamat yang menunjuk ke string Selasa. namahari[2] berisi alamat yang menunjuk ke string Rabu. dan sebagainya. 16

Contoh Array of Pointer #include <stdio.h> main() { static char *namahari[] = {"Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu", "Minggu"}; int hari; } printf("hari 1..6 : "); scanf("%d", &hari); printf("hari ke-%d adalah %s\n", hari,namahari[hari-1]); 17

Pointer Dalam Fungsi - Pointer sebagai Parameter Fungsi Penerapan pointer sebagai parameter yaitu jika diinginkan agar nilai suatu variabel internal dapat diubah oleh fungsi yang dipanggil. /* Program : argptr.c Fungsi dengan argumen berupa pointer */ #include <stdio.h> void naikkan_nilai(int *, int *); main() { int a = 3, b = 7; printf("semula : a = %d b = %d\n", a, b); naikkan_nilai(&a, &b); printf("kini : a = %d b = %d\n", a, b); } void naikkan_nilai(int *x, int *y) { *x = *x + 2; *y = *y + 2; } 18

Analisa Program Fungsi di atas dimaksudkan agar kalau dipanggil, variabel yang berkenaan dengan parameter aktual dapat diubah nilainya, masingmasing dinaikkan sebesar 2. Contoh pemanggilan : naikkan_nilai(&a, &b); Perhatikan, dalam hal ini variabel a dan b harus ditulis diawali operator alamat (&) yang berarti menyatakan alamat variabel, sebab parameter fungsi dalam pendefinisian berupa pointer. void naikkan_nilai(int *x, int *y); 19

- Pointer sebagai Keluaran Fungsi Suatu fungsi dapat dibuat agar keluarannya berupa pointer. Contoh : Fungsi yang menghasilkan keluaran yang menunjuk ke string nama-nama bulan. #include<stdio.h> char *nama_anak[int n]; main() { int i; printf( Pilih anak ke(1..4) = ); scanf( %d,i); printf( %s\n,nama_anak(i)); } char *nama_anak(int n) { static char *anak[]= { Kode anak salah. Adya, Mita, Sigit, Khoir }; } 20

LATIHAN 1. Buat program untuk menampilkan sebaris string seperti contoh berikut ; Selamat Pagi menggunakan variable pointer (pointer to string), kemudian tampilkan karakter per karakter. 2. Buat potongan program untuk mencetak huruf ketiga ( L ) dari kata : P O L I T E K N I K dengan menggunakan variabel pointer. 21