Вы находитесь на странице: 1из 18

POINTER

PEMROGRAMAN STRUKTUR DATA C++

Kelompok 1

Melia Roslianeu

Ellys Ayuwulandari K.A


PENJELASAN POINTER

Variabel yang berisi alamat memori sebagai


nilainya dan
Berbeda dengan variabel biasa yang berisi nilai
tertentu.

 Variabel Secara Langsung : menunjuk ke suatu nilai tertentu

 Variabel Secara Tidak Langsung : menunjuk ke nilai


( merupakan variabel pointer )
BENTUK UMUM VARIABEL POINTER

Type *Variabel-name;

 Type adalah tipe dasar pointer

 Variabel name adalah nama variabel pointer

 * adalah operator memori yang fungsinya untuk mengembalikan nilai


variabel pada alamatnya yang ditentukan oleh operand.
Contoh Program Pointer
//Program : Pointer1.cpp
#include <iostream.h>
//cetak p dan *p
Void main ()
{
Int v = 7, *p;
P = &v;
Cout<<“nilai v = “<< v << “ dan *p = “ << *p
<< “\nAlamatnya = “ << p << ‘\n’;
}
OPERATOR POINTER

Ada beberapa operator yang bisa digunakan dalam pointer :

 Operator Alamat ( Dilambangkan dengan simbol “&” )


merupakan operator unary yang mengembalikan alamat
dari operandnya. Dimana operator ini menunjukan alamat
dari suatu variabel.

x = 7;
y = &x; // operator alamat
y = 0x6a2F242c // alamat variable x
OPERATOR POINTER

 Operator Reference ( Dilambangkan dengan simbol “*“ )


Operator yang menunjukan isi / nilai dari variabel yang
ditunjuk pointer.

x = 7;
y = &x;
*y = 7 // *y = isi dari alamat x
CONTOH PROGRAM
#include <iostream.h>
Int main ()
{
Int *ptr, num;
Ptr = &num;
*ptr = 100;
Cout << num << “ “;
(*ptr) ++;
Cout << num << “ “;
(*ptr) *2;
Cout << num << “\n”;
Return 0
}
EKSPRESI POINTER

I. POINTER ARITMATIKA
 ++
 ==
 +
 -
Asumsi integer 32 bit
EKSPRESI POINTER

II. POINTER PERBANDINGAN


 !=
 ==
 <
 >
POINTER VERSUS ARRAY
Array dan Pointer adalah dua struktur
data yang saling berkaitan
satu sama lain di dalam C, dan dapat saling
dipertukarkan penggunaanya

Didefinisikan dua variabel pointer dan array :

Int *bPtr, b[5];


CONTOH PROGRAM

#include <iostream.h>
#include <stdio.h>
Int main ()
{
Char str [80];
Char token [80];
Char *str_ptr, *tk_ptr;
Cout <<“masukkan sebuah kalimat:”;
Gets (str);
CONTOH PROGRAM
Str_ptr=str;
While (*str_ptr) {
Tk_ptr =token;
While (*str_ptr !=‘ ‘&& *str_ptr){
*tk_ptr=*tk_ptr;
Tk_ptr++;
Str_ptr++;
}
If (*str_ptr) str_ptr++;
*tk_ptr=‘\0’;
Cout <<token<<endl;
}
Return 0;
}
POINTER INDEX
• Tidak hanya dapat menggunakan pointer
untuk mengakses elemen array, tetapi
pointer
mungkin juga diindex seolah-olah adalah
sebuah array.
CONTOH PROGRAM
#include <iostream.h>
#include <ctype.h>
Int main ()
{
Char str[20]=“hai ellys n meli”;
Char *p;
Int i;
P=str;
For(i=0; p[i]; i++)
P[i]=toupper (p[i]);
Cout<<p;
Return 0;
}
KONSTANTA STRING DAN POINTER

• Konstanta sering terlihat dalam program


teks
dan disimpan dalam tabel string setiap
entry
dalam tabel string, pointer string
dibangkitkan.
CONTOH PROGRAM
#include <iostream.h>
Int main ()
{
Char *s;
S = “pointer sangat menyenangkan bagi kita.\n”;
Cout <<s;
Return 0;
}
Hasilnya :

pointer sangat menyenangkan bagi kita


ARRAY POINTER
#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 << number [n] << “, “;
Return 0’
}
DEMIKIAN

PERSENTASI KAMI MENGENAI POINTER

APABILA ADA KEKURANGAN MOHON MAAF…

SEBAB KAMI MASIH MEMAHAMI DAN MEMPELAJARINYA.

TERIM KASIH

Вам также может понравиться