POINTER yuli_dev@yahoo.com.

Slides:



Advertisements
Presentasi serupa
POINTER.
Advertisements

PERTEMUAN IV POINTER Pointer adalah suatu variabel penunjuk yang menunjuk pada suatu alamat memori komputer Pointer merupakan.
STRUKTUR DATA (5) Pointer dan Function
Pointer Konsep Pemrograman.
Pointer. Output? #include int x = 2; void misteri(int a, int b) { a = 2*x; b = y; y = a; } main() { int y; x = 5; y = 7; misteri(x, y); printf("%d %d\n",
Pointer.
Parameter formal adalah variabel yang ada pada daftar parameter dalam
POINTER
Pointer dan Reference As’ad Djamalilleil
Pemrograman Terstruktur
Pointer Variabel pointer sering disebut sebagai variabel yang menunjuk obyek lain, karena variabel pointer atau pointer adalah variabel yang berisi alamat.
Algoritma & Struktur Data Pointer Evangs Mailoa.
STRUKTUR DATA (5) Pointer dan Function
Pemrograman Dasar Pointers.
Pointer Yuliana Setiowati.
Pointer Dr. Lily Wulandari.
POINTER (VAR.PENUNJUK)
Pertemuan 22 POINTER Bag.2 Dasar Pemrograman Renni Angreni, S.Kom.
STRUKTUR DATA Pointer dan Function
P O I N T E R. Merupakan sebuah variabel yang berisi alamat dari variabel lain. Suatu pointer dimaksudkan untu menunjukan ke suatu alamat memori sehingga.
Bab 8 Pointer Riyanto Sigit Konsep Dasar Pointer  Variabel pointer sering dikatakan sebagai variabel yang menunjuk ke obyek lain  Variabel.
Pointer Pointer.
Pemrograman Berorientasi Obyek1 Sub Pokok Bahasan Pointer. Reference. Function Passing Parameter by Value, by Reference, by Pointer.
Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006
POINTER.
Teknik Pemrog. Terstruktur 2
Tenia Wahyuningrum pointers Tenia Wahyuningrum
POINTER Bag.2 Pertemuan 22 Dibuat oleh : Renni Angreni, S.Kom. Triana Elizabeth, S.Kom.
Pointer BY HARIFUDDIN.
Bab2 ARRAY (LARIK).
STRUKTUR.
FUNCTION Fungsi (Function) merupakan sekumpulan instruksi yang membentuk satu unit serta memiliki nama. Fungsi digunakan.
FUNGSI.
Pemrograman Terstruktur
Pertemuan 21 POINTER Bag.1 Dasar Pemrograman Renni Angreni, S.Kom.
Pertemuan III Komentar, Identifier dan Tipe data.
ARRAY (LARIK)
STRUKTUR DATA Pengenalan C++
MODULAR (FUNGSI)
FUNCTION Fungsi (Function) merupakan sekumpulan instruksi yang membentuk satu unit serta memiliki nama. Fungsi digunakan.
STRUKTUR DATA array.
Struktur Data (Data Structure) – IS 2313
Pointer Variabel pointer sering disebut sebagai variabel yang menunjuk obyek lain, karena variabel pointer atau pointer adalah variabel yang berisi alamat.
POINTER (VAR.PENUNJUK)
Pointer Pertemuan 10 Bahasa C.
Pointer FARID WAJDI YUSUF.
P O I N T E R.
Pointer Oleh : Sri Supatmi,S.Kom.
ALGORITMA DAN PEMROGRAMAN II
STRUCT OF ARRAY.
Program komputer Sebuah program komputer yang ditulis dengan bahasa apapun dapat dipandang sebagai sebuah himpunan operasi yang dikerjakan pada data-data.
Castaka agus sugiato, M.Kom., M.CS
Tenia Wahyuningrum pointers Tenia Wahyuningrum
Algoritma dan Struktur Data
~ PERTEMUAN 4 KONSEP TIPE DATA ~
Algoritma dan Struktur Data
As’ad Djamalilleil Pointer dan Reference As’ad Djamalilleil
Algoritma dan Struktur Data
MODULAR (FUNGSI)
Algoritma dan Struktur Data
Pointer Oleh : Sri Supatmi,S.Kom.
ARRAY (LARIK)
FUNGSI II.
STRUCTURE Struktur (Structure = struct) merupakan suatu struktur data yang terdiri dari satu atau lebih variabel yang bertipe data.
ARRAY (LARIK)
array Array merupakan tipe data yang menampung
Pemrograman Terstruktur
POINTER (VAR.PENUNJUK)
POINTER
Pointer.
Transcript presentasi:

POINTER yuli_dev@yahoo.com

POINTER Pointer (variabel penunjuk) adalah suatu variabel yang berisi alamat memori dari suatu variabel lain. Alamat ini merupakan lokasi dari obyek lain (biasanya variabel lain) di dalam memori. Contoh: jika variabel A berisi alamat dari variabel B, maka variabel A dikatakan menunjuk ke variabel B.

Operator pointer ada 2 : 1. Operator & Operator & menghasilkan alamat dari operandnya atau alamat memori yg ditempati oleh variabel 2. Operator * Operator * menghasilkan nilai yang berada pada sebuah alamat. Perbedaan pointer dengan variable biasa Pointer Variabel biasa Deklarasi int *a; int b; Alamat memori Tidak otomatis Otomatis Mengetahui alamat memori A &b Mengetahui datanya *a b

Deklarasi pointer Seperti halnya variabel yang lain, variabel pointer juga harus dideklarasikan terlebih dahulu sebelum digunakan. Bentuk Umum : Tipe_data *nama_pointer; Contoh : int *nilai; char *huruf;

Ada dua cara yang dapat dilakukan untuk alokasi space di memori bagi pointer, yaitu: Menempati space variable lain yang sudah punya space. Variabel lain tersebut dapat berupa variabel biasa (bukan pointer) atau pointer yang tentunya sudah punya alokasi space di memori. Syntaxnya : var_pointer = &var_biasa;

Contoh 1 : #include <iostream.h> #include <conio.h> main() { int x,*y; char *judul="PENGGUNAAN POINTER"; y=&x; x=5; cout<<judul<<endl; cout<<"Nilai x = "<<x;//5 cout<<"\nAlamat memori x = "<<&x; cout<<"\n\nNilai y = "<<*y;//5 cout<<"\nAlamat memori y = "<<*y;//5 getch();}

Keterangan : Karena *y menempati alokasi memori yang sama dengan x, akibatnya data yang tersimpan di dalamnyapun akan sama. Jika ada instruksi yang menginisialisasi x, otomatis juga akan menginisialisasi *y.

Contoh 2 : #include <iostream.h> #include <conio.h> main() { int x,*y; y=&x; x=5; *y=10; cout<<"Nilai x = "<<x;//5 cout<<"\nAlamat memori x = "<<&x; cout<<"\n\nNilai y = "<<*y;//10 cout<<"\nAlamat memori y = "<<y; getch();}

Coba tebak outputnya: #include <iostream.h> #include <conio.h> main (){ int n1,n2; int *p; p=&n1; *p=10; p=&n2; *p=20; cout<<"Nilai n1 = "<<n1; cout<<"\nNilai n2 = "<<n2; cout<<"\nNilai p = "<<*p; getch();}

2. Dialokasikan tersendiri di memori (Memori dinamis). Pointer tidak menempati space variabel lain, tetapi dialokasikan space tersendiri di memori dengan instruksi new. Syntaxnya: var_pointer = new tipe_data-pointernya; Contoh : int *a; float *x; a=new int; x=new float;

Contoh : #include <iostream.h> #include <conio.h> main() { int x,*y; y=new int; x=5; *y=10; cout<<"Nilai x = "<<x;//5 cout<<"\nAlamat memori x = "<<&x; cout<<"\n\nNilai y = "<<*y;//10 cout<<"\nAlamat memori y = "<<y; getch();}

Keterangan : x dan y mempunyai alokasi memori yang berbeda, sehingga data yang tersimpan di dalamnyapun akan berbeda pula. Membebaskan memori dari variabel dinamis Dengan alokasi memori dinamis ini kita dapat menghemat alokasi memori dengan cara membebaskan memori dari variabel dinamis, jika memang variabel tersebut tidak digunakan lagi. Syntaxnya: delete var_pointer;

Contoh : #include <iostream.h> #include <conio.h> main() { int x,*y; y=new int; x=5; *y=10; cout<<"Nilai x = "<<x; cout<<"\nAlamat memori x = "<<&x; cout<<"\n\nNilai y = "<<*y; cout<<"\nAlamat memori y = "<<y; delete y; cout<<"\n\nSetelah di delete"; cout<<"\nNilai y = "<<*y; getch();}

Setelah dikenai instruksi delete y; maka nilai yang tersimpan Keterangan : Setelah dikenai instruksi delete y; maka nilai yang tersimpan dalam *y akan hilang. Itulah sebabnya *y dikatakan sebagai variable dinamis, sedangkan x merupakan variable statis, sehingga tidak bisa dibebaskan dari memori. Fungsi dengan parameter pointer Parameter keluaran yaitu parameter yang berfungsi untuk menampung nilai yang dihasilkan dari proses di dalam fungsi. Parameter keluaran ini digunakan dalam fungsi tipe void (tanpa return value),dengan kata lain parameter tersebut digunakan sebagai nilai keluaran dari sebuah fungsi. Dengan demikian parameter keluaran ini harus dilewatkan berdasarkar alamat atau referensinya, yaitu menggunakan pointer atau reference.

Contoh : #include <iostream.h> #include <conio.h> void luas(int *ls, int p, int l) { *ls = p*l; } main(){ int pj,lb,ls; cout<<"Panjang = ";cin>>pj; cout<<"Lebar = ";cin>>lb; luas(&ls,pj,lb); cout<<"\nLuasnya = "<<ls; getch();}

Contoh : #include <iostream.h> #include <conio.h> void luas(int *ls,int *kel, int p, int l); main(){ int pj,lb,ls,kl; cout<<"Panjang = ";cin>>pj; cout<<"Lebar = ";cin>>lb; luas(&ls,&kl,pj,lb); cout<<"\nLuasnya = "<<ls; cout<<"\nKelilingnya = "<<kl; getch();} void luas(int *ls,int *kel, int p, int l) { *ls = p*l; *kel = 2*(p+l);}

Latihan Buatlah program untuk mencari nilai maksimal dari n bilangan menggunakan fungsi dengan parameter pointer. Buatlah program untuk menentukan keterangan dari nilai mata kuliah menggunakan fungsi dengan parameter pointer. Dengan ketentuan jika : Nilai >= 90 - 100 maka A Nilai >= 80 - < 90 maka B Nilai >= 70 - < 80 maka C Nilai >= 60 - < 70 maka D Nilai >= 50 - < 60 maka E Nilai < 50 maka tidak lulus