• Tidak ada hasil yang ditemukan

Struktur Data Modul 06 Pointer

N/A
N/A
Protected

Academic year: 2018

Membagikan "Struktur Data Modul 06 Pointer"

Copied!
3
0
0

Teks penuh

(1)

MODUL VI POINTER I. Tujuan

1. Memahami konsep pointer

2. Memahami implementasi pointer dalam pemrograman cpp

II. Dasar Teori

Pointer adalah sebuah tipe data yang menunjuk value lain yang tersimpan dalam memory. Dengan menggunakan pointer kita dapat mengakses sebuah value tanpa mengacu pada variable tersebut secara langsung melainkan dengan menggunakan alamat dari variable tersebut. Pointer juga sering digunakan sebagai pengakses array selain menggunakan indeks.

Pendeklarasian pointer

Tipe_data *nama_variabel_pointer

DEMO 1

void main()

{

int x;

int *pointerX;

printf(“masukkan value dari variable X: “);

scanf(“%d”,&x);

pointerX=&x;

printf(“alamat variabel: %d dan valuenya %d",pointerX,*pointerX);

(2)

Pada code diatas dapat diamati cara deklarasi sebuah pointer untuk menunjuk variable bertipe integer. Pada statement pointerX=&x; pointer diarahkan untuk menunjukkan alamat variable x berada. Pada saat dicetak pointerX digunakan untuk mencetak alamat dari variable x. Sedangkan *pointer digunakan untuk mencetak nilai dari variable x.

Contoh dekalarasi pointer pada array:

DEMO 2

void main()

{

int M[5],i;

int *pointerM;

for(i=0;i<5;i++)

{

M[i]=i+1;

}

pointerM=&M[0];

for(i=0;i<5;i++)

{

printf("\nAlamat Variabel M:%d\n value:%d\n",pointerM,*pointerM);

pointerM++;

}

//mengubah isi dari index tertentu lewat pointer

printf("Ubah isi dari Index ke (0 - 4):");

scanf("%d",&i);

pointerM=&M[i];

printf("Masukkan Value:");

(3)

printf("\nHasil: \nAlamat Variabel M:%d

\nvalue:%d\n",pointerM,*pointerM);

}

Pada code diatas pointerM=&M[0]; berarti pointerM menunjuk alamat dari array M indeks ke 0. Kemudian pada saat mengganti value pada array indeks tertentu, perintah scanf

tidak menggunakan tanda ‘&’ karena pointerM telah menunjuk alamat dari array indeks yang

ditentukan dengan menggunakan pointerM=&M[i]; sehingga scanf("%d",pointerM); digunakan untuk mengganti value yang ditunjuk oleh pointerM.

Pointer ke struct

DEMO 3

#include <iostream.h>

typedef struct

{

int NIM;

double IPK;

}Mahasiswa;

void main()

{

Mahasiswa M;

Mahasiswa* pM;

cout<<"NIM : ";cin>>M.NIM;

cout<<"IPK : ";cin>>M.IPK;

pM=&M;

cout<<endl;

cout<<"NIM : "<<pM->NIM<<endl;

cout<<"IPK : "<<pM->IPK<<endl;

}

Pada program diatas, pointer memiliki tipe data yang sama dengan struct sehingga

Referensi

Dokumen terkait

Jenis penelitian yang digunakan dalam penelitian ini adalah penelitian kualitatif dengan menggunakan metode deskriptif, yaitu memberi gambaran secara jelas tentang

1) Tujuan, secara eksplisit, diupayakan melalui kegiatan pembelajaran instructional effect, biasanya berupa pengetahuan dan keterampilan atau sikap yang dirumuskan secara

Telah diadakan Pemeriksaan Barang sesuai dengan lampiran kontrak kepada Sekretariat Dewan Perwakilan Rakyat Daerah Kabupaten Puncak dan telah diterima dalam keadaan 100% baru, baik

Instrumen yang digunakan dalam penelitian aspek kognitif ini berupa tes objektif tentang materi sistem koloid yang terdiri dari 25.. butir soal dengan 5 alternatif

 Secara Nasional produksi padi Provinsi Sulawesi Tengah tahun 2015 mempunyai kontribusi sebesar 1,35 persen dari total produksi padi nasional sebesar 75,36 juta ton

Berdasarkan temuan ini manajemen LPD semestinya mengembangkan suatu pola penghayatan dan pengamalan nilai-nilai budaya THK yang dapat meningkatkan kepercayaan atas kegunaan dan

Gambar 4.2 Hubungan Kuat Tekan Bata Beton Ringan pada Umur 28 Hari dengan Penambahan Zat Kapur pada Tiap Tipe Bata Beton Ringan

Namun secara umum apabila efektivitas kinerja tersebut dikaitkan dengan kegiatan pelayanan jasa, suatu kinerja layanan akan dikatakan efektif jika pelanggan merasa puas