Selasa, 26 Februari 2019

ALGORITMA DAN PEMROGRAMAN 2 "POINTER"

Posted by angel's note on Februari 26, 2019 with No comments
Materi  Pointer

A. Pengertian Pointer
     Pointer adalah variabel yang menunjuk pada variabel lainnya. Pointer dapat menyimpan alamat    memori yang ditunjuk. Pada pointer kita dapat menunjuk menunjuk suatu memori, mengubah nilai dan menyalin nilai memori tersebut secara tidak langsung (perantara melalui variabel pointer).

B. Fungsi Pointer
     1. Menyimpan alamat memori dari sebuah variabel (tipe data atau objek dari kelas).
     2. Menyimpan alamat dari sebuah fungsi (function pointer).
     3. Mengirim "Paramerer yang berupa variabel" ke dalam fungsi, artinya nilai variabel bisa diubah di dalam fungsi.
     4. Untuk membuat variabel dinamis.

C. Macam-Macam Operator Pada Pointer
     Dalam pointer terdapat dua macam operator yang dapat kita gunakan, yaitu :
     1. Operator Deference (&)
         Operator ini biasanya disebut dengan address of atau operator alamat. Dengan menggunakan    operator deference (&) ini, suatu akan menghasilkan alamat memori memori.
         Contoh program :
      
          Running :
  
      2. Operator Reference (*)
          Operator ini biasanya disebut value pointed by. Dengan menggunakan operator ini, kita dapat mengakses secara langsung nilai yang terdapat pada suatu alamat memori.
         Contoh program :  

          Running :

D. Mendeklarasi Variabel Pointer
     Pointer dapat dinyatakan dalam C++ menggunakan penulisan seperti berikut:
           
                                      tipe_data*nama_pointer;

     Keterangan :
     - tipe_data dapat berupa sembarang tipe seperti halnya pada pendefenisian variabel bukan pointer.
     - nama_variabel adalah nama variabel pointer.
   
    Ada dua cara yang dapat dilakukan dilakukan untuk alokasi space di memori di pointer, yaitu:
    1. Menempati space variabel lain yang sudah punya space
        Variabel lain tersebut dapat  berupa variabel biasa (bukan pointer) atau pointer yang tentunya sudah punya alokasi space di memori.
        Penulisannya:
                                      var_pointer=&var_biasa;
    2. Dialokasikan tersendiri di memori (memori dinamis).
        Pointer tidak menempati space variabel lain, tetapi dialokasikan space tersendiri di memori dengan instruksi new.
       Penulisannya:
                                      var_pointer=new tipe_data-pointer;

E. Pointer Pada Array
     Hubungan antara pointer dan array pada C sangatlah erat. Sebab sesungguhnya array secara internal akan diterjemahkan dalam bentuk pointer. Konsep array diantaranya adalah banyak loncatan dari pointer satu ke pointer lain karena secara internal array juga menyatakan alamat, yaitu pengenal array sama dengan alamat pada elemen pertama, pada array. Misalnya dideklarasikan sebagai berikut: 
int A[5]= {0, 3, 5, 4,7}: dan int *pntArray;
Contoh program : 


Running :



F. Pointer Sebagai Parameter Suatu Fungsi
    Seperti halnya dengan array, pointer dapat digunakan sebagai parameter suatu fungsi. Karena sifat pointer yang hanya sebagai penunjuk, maka setiap perubahan yang terjadi pada parameter, sebenarnya terjadi pada variabel yang ditunjuk bukan pada variabel pointer. Penerapan pointer sebagai parameter yaitu jika diinginkan agar nilai suatu variabel internal dapat diubaholeh fungsi yang dipanggil. Sebagai contoh dapat dilihat pada fungsi yang dipanggil. Sebagai contoh dapat dilihat pada fungsi berikut: 

                                                     void tambah (int *angka)
                                                    {
                                                          *angka = *angka +30;
                                                    }

Fungsi diatas dimaksudkan agar kalau dipanggil variabel yang bersangkutan dengan parameter aktual dapat diubah nilainya menjadi dinaikkan sebesar 30. 
Contoh program:


Running:



Referensi:


0 komentar:

Posting Komentar