Thursday, July 27, 2017

Pointer part 2 : pointer to pointer, pointer return function

Yups ketemu lagi di tutorial c++ sekarang kita akan masuk lebih dalam lagi ke pointer megingat pointer ini rumit namun bagian penting dari c++
pointer to pointer apa itu?
Pointer ke pointer adalah bentuk dari beberapa tipuan atau rangkaian pointer.Biasanya, pointer berisi alamat variabel. Saat kita mendefinisikan sebuah pointer ke pointer(pointer to ointer), pointer pertama berisi alamat dari pointer kedua, yang mana
Poin ke lokasi yang berisi nilai aktual seperti yang ditunjukkan di bawah ini


   Pointer         Pointer         Variable
 |         |     |         |     |         |
 | Address |---->| Address |---->|  Value  |
 |_________|     |_________|     |_________|



Note:
Address : Alamat
Value     : Isi

Variabel yang merupakan pointer ke pointer harus dinyatakan seperti ini,misalnya deklarasikan pointer ke pointer dengan variable int


 int **var;

Ketika nilai suatu target secara tidak langsung ditunjukkan oleh pointer, maka untuk mengakses nilai / value mengharuskan operator asterisk diterapkan sebanyak dua kali,lihat script ini sebagai contoh

#include <iostream>
using namespace std;
int main ()
{
int x;
int *ptr;
int **pptr;
var = 3000;
//mengambil alamat dari  variale x
ptr = &x;
// mengambil alamat dari pointer mengunakan &
pptr = &ptr;
//  menampilkan isi
cout << "Isi dari var :" << x << endl;
cout << "Isi dari nilai  *ptr :" << *ptr << endl;
cout << "Isi dari nilai **pptr :" << **pptr << endl;
return 0;
}  

Pointer ke Fungsi
Hal ini memungkinkan kamu melompatin pointer ke dalam sebuah fungsi. Untuk melakukannya, kamu hanya perlu mendeklarasikan
Parameter fungsi sebagai tipe pointer
sebagai contoh sederhana di mana kita akan melewati sebuah pointer panjang unsigned ke a kemudian fungsi akan mengubah nilai di dalam fungsi maka hal ini akan tergambarkan kedalam fungsi calling
cotoh:

#include <iostream>
#include <ctime>
using namespace std;
void getDetik(unsigned long *par);
int main()
{
unsigned long detik;
getDetik( &detik );
//menampilakn nilai waktu
cout << "Hitungan detik :" <<detik<< endl;
return 0;
}
void getDetik(unsigned long *par)
{
//  menampilakn waktu
*par = time( NULL );
return;
}


Pointer Return to Function
Nah seperti sebelumnya hal memungkinkan kamu untuk mengembalikan pointer dari fungsi. Bisakah melakukan. Jadi, Kamu hanya hanya harus menyatakan sebuah fungsi mengembalikan sebuah pointer seperti berikut ini
contoh:

#include <iostream>
#include <ctime>
using namespace std;
int * getRandom()
{
static int
r[10];
    srand( (unsigned)time( NULL ) );
      for (int i = 0; i < 10; ++i)
   {
     r[i] = rand();
cout << r[i] << endl;
   }
     return r;
   }
int main ()
 {
 int *p;
    p = getRandom();
    for ( int i = 0; i < 10; i++ )
      {
       cout << "*(p + " << i << ") : ";
       cout << *(p + i) << endl;
      }
    return 0;
 }

Sekian Pointer part 2 ini begitulah kira kira skema pelajaran kita salam ex code []

Bagikan

Jangan lewatkan

Pointer part 2 : pointer to pointer, pointer return function
4/ 5
Oleh

Subscribe via email

Suka dengan artikel di atas? Tambahkan email Anda untuk berlangganan.