• Tidak ada hasil yang ditemukan

Kumpulan Modul Bahasa Pemrograman C++ 10. pointer

N/A
N/A
Protected

Academic year: 2017

Membagikan "Kumpulan Modul Bahasa Pemrograman C++ 10. pointer"

Copied!
15
0
0

Teks penuh

(1)

Pointer

Pointer

Pointer

Pointer

Bhs.Pemrograman 1

Bhs.Pemrograman 1

Oleh:

Oleh:

Desma Fitri, S.Kom

(2)

Pointer

(3)

DEKLARASI POINTER

Tipe data *nama_var_pointer

(4)

Operator

Pointer

Operator Alamat / Dereference Operator(&)

untuk mendapatkan alamat memori operand/ variable pointer. Cth: Bil1 = &Bil2;

dibaca: isi variabel bil1 sama dengan alamat bil2

Operator Reference (*)

untuk mengakses nilai data operand/ variable pointer.

Bil1=*Bil2;

(5)

Contoh:

/Program :pointer1. cpp

/Program :pointer1. cpp

#include <iostream.h>

#include <iostream.h>

#include<conio.h>

#include<conio.h>

// cetak p dan *p

// cetak p dan *p

void main(void)

void main(void)

{

{

int v = 7, *p;

int v = 7, *p;

p = &v;

p = &v;

cout << "Nilai v = " << v << " dan *p = " << *p

cout << "Nilai v = " << v << " dan *p = " << *p

<< " \nAlamatnya = " << p << 'n';

<< " \nAlamatnya = " << p << 'n';

getch();

getch();

}

}

Hasil dari program adalah sebagai berikut :

Hasil dari program adalah sebagai berikut :

Nilai v = 7 dan *p = 7

Nilai v = 7 dan *p = 7

Alamatnya = efffb24

(6)

contoh2

#include <stdio.h>

#include <conio.h> int main()

{

char pointerku[10]="";

pointerku[0]='a'; pointerku[1]='b';

printf("%s",pointerku);

(7)

contoh3

#include <stdio.h>

#include<conio.h>

int main()

{

char pointerku[10]="pointerku";

char tampung[10]="";

if(pointerku[2]=='i')

{

tampung[0]=pointerku[2];

}

printf("%s",tampung);

getch();

(8)

Contoh program operator pointer

:

//Program :pointer2. cpp

#include <iostream.h>

Int main()

{

int *ptr, num; // 1

ptr = &num; // 2

*ptr = 100; // 3

cout << num << “ “;

(*ptr)++; // 4

cout << num << “ “;

(*ptr)*2; // 5

cout << num << “\n “;

return 0;

}

(9)

Bila dijalankan hasilnya adalah sebagai berikut : 100 101 101

Penjelasan :

1. Kondisi variabel num menunjukkan angka 50 dan kondisi variabel pointer ptr masih kosong

2. Variabel pointer ptr menunjuk pada isi dari variabel num sehingga variabel pointer ptr isinya 50

3. Variabel num berisi angka 100 sedangkan variabel pointer ptr isinya tetap 50

4. Isi variabel num bertambah 1 dari 100 menjadi 101

5. Isi variabel num dari 101 menjadi 202. Hasil ini diperoleh dari 101*2

Pointer Aritmetika

Ada 4 operator aritmetika yang digunakan yaitu : ++, = =, + dan – Contoh program yang dapat menampilkan 10 buah data yang

mempunyai alamat berbeda-beda:

(10)

//Program :pointer3. cpp #include <iostream.h> int main()

{

int i [10], *i_ptr; double f[10], *f_ptr; int x;

i_ptr = i; f_ptr = f;

for(x=0; x<10; x++)

cout << i_ptr+x << “ “ << f_ptr+x << “\n”; return 0;

}

(11)

Pointer Perbandingan

Pointer dapat dibandingkan dengan Operator hubungan seperti !=, ==,<,

dan >.

//Program :pointer4. cpp #include <iostream.h> int main()

{

int num[10];

int *start, *end; start = num;

end = &num[9];

while(start != end) {

cout << “Masukkan bilangan sebanyak 9 data : ”; cin >> *start;

start++; }

return 0; }

(12)

Konstanta String Dan Pointer

Konstanta string terlihat dalam program teks dan disimpan dalam tabel.

String

Contoh Program pointer string //Program :pointer5. cpp

#include <iostream.h> int main()

{

char *s;

S = “Pointer mudah digunakan. \n”; cout << s;

return 0; }

Output :

Pointer mudah digunakan

(13)

Array Pointer

Pointer dapat di-array seperti tipe data lain dalam C++ integer contoh :

Int *pi[10];

Contoh Program array pointer //Program :pointer6. cpp

#include <iostream.h> int main()

{

Int numbers[5]; Int *p;

p = numbers; *p = 10; p++; *p =20;

p = &numbers[2]; *p = 30; p = numbers + 3; *p = 40; p = numbers; *(p+4) = 50; for (int n=0; n<5; n++)

cout << numbers[n] << “, “; return 0;

}

Output :

10, 20, 30, 40, 50,

(14)

Pointer Dalam Pointer

C++ memperbolehkan penggunaan pointer dalam pointer

Yang masing-masing berisi data yang sama atau berbeda.

address

value

pointer

variable

address

value

Pointer tunggal

address

pointer

pointer

variable

Pointer dalam pointer

(15)

Contoh : char a; char * b; char ** c; a = ‘z’ ; b = &a; c = &b;

Referensi

Dokumen terkait

• Struktur adalah sekumpulan variabel yang masing-masing dapat berbeda tipe,dan dikelompokkan ke dalam.

Pengiriman data dari sebuah fungsi ke fungsi lain dapat juga dilakukan dengan bantuan pointer, bila pointer digunakan, maka data yang dikirim harus berupa alamat variabel,

variabel tertentu dan menampilkan juga alamat suatu pointer yang isinya sama dengan yang. ditunjuk oleh

- Jika P adalah suatu variabel pointer, maka nilainya adalah alamat atau lokasi dari variabel lain yang dituju. - Operasi yang didefinisikan pada suatu variabel pointer

Buatlah program sederhana menggunakan variable pointer untuk menunjuk pada tipe data char, dengan nilai dari variable tersebut adalah input dari nama anda.

Pemanggilan secara Referensi merupakan upaya untuk melewatkan alamat dari suatu variabel ke dalam fungsi. Yang dikirimkan ke fungsi adalah alamat letak dari nilai

- Penerapan pointer sebagai parameter yaitu jika diinginkan agar nilai suatu variabel internal dapat diubah oleh fungsi yang dipanggil. - Penerapan pointer

menyatakan variabel pointer char *pch1, *pch2; tanda akhir pernyataan deklarasi nama variabel pointer tipe data yang ditunjuk oleh variabel pointer Gambar 8.2 Ilustrasi