0% menganggap dokumen ini bermanfaat (0 suara)
194 tayangan

Pointer

Dokumen tersebut membahas tentang konsep pointer dalam bahasa pemrograman C, termasuk definisi pointer, deklarasi variabel pointer, contoh penggunaan pointer untuk menunjuk variabel, array, dan string. Metode yang diajarkan adalah menggunakan operator '&' untuk mengambil alamat memori suatu variabel dan operator '*' untuk mengakses isi variabel melalui pointer. Diuraikan pula perbedaan pendeklarasian array dan string menggunakan pointer.

Diunggah oleh

zebitoexposto
Hak Cipta
© Attribution Non-Commercial (BY-NC)
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
194 tayangan

Pointer

Dokumen tersebut membahas tentang konsep pointer dalam bahasa pemrograman C, termasuk definisi pointer, deklarasi variabel pointer, contoh penggunaan pointer untuk menunjuk variabel, array, dan string. Metode yang diajarkan adalah menggunakan operator '&' untuk mengambil alamat memori suatu variabel dan operator '*' untuk mengakses isi variabel melalui pointer. Diuraikan pula perbedaan pendeklarasian array dan string menggunakan pointer.

Diunggah oleh

zebitoexposto
Hak Cipta
© Attribution Non-Commercial (BY-NC)
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 15

PERTEMUAN V POINTER

JURUSAN TELEKOMUNIKASI POLITEKNIK ELEKTRONIKA NEGERI SURABAYA


Oleh : Muh. Zen S. Hadi, ST

Objectives
Setelah menyelesaikan bab ini, anda diharapkan dapat:

Menjelaskan tentang konsep dari variabel pointer Menjelaskan tentang pointer array Menjelaskan tentang pointer string Menjelaskan tentang array pointer

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

Variabel Pointer px menunjuk ke variabel x

xxxx address 1000

1000

px
px = &x;

Deklarasi Variabel Pointer


Bentuk umum:

tipe_data *nama_variabel; Contoh: int *px; Mengatur pointer agar menunjuk ke variabel lain: px = &x; Mengakses isi suatu variabel melalui pointer: y = *px;

Variabel Pointer
*px isi dari alamat memory yang ditunjuk

variabel px. &x alamat memory dari variabel x.

Contoh #1
#include <stdio.h> Alamat x main() Isi px { Isi x int y, x = 87; Nilai px int *px; Nilai y 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 *px); printf("Nilai y = %d\n", y); }

= = = = =

0012FF78 0012FF78 87 87 87

= %d\n",

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; int nu; int u = 1234; pu = &u; nu = *pu; printf("Alamat dari u = %p\n", printf("Isi pu = %p\n", printf("Isi u = %d\n", printf("Nilai yang ditunjuk pu printf("Nilai nu = %d\n", }

&u); pu); u); = %d\n", *pu); nu);

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 Isi d sekarang = 54.5 = 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("Nilai tgl_lahir[i] = %d\n", *ptgl++); }

Keterangan : tgl_lahir[i]

*(ptgl+i)

*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

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 .

15

Anda mungkin juga menyukai