Anda di halaman 1dari 9

LAPORAN PRAKTIKUM RESMI

POINTER





Disusun oleh :
Steven Nyotoharjo
201301001

Dosen pengampu :
Yosef Murya Kusuma Ardhana.S.T., M.Kom




JURUSAN SISTEM INFORMASI
SEKOLAH TINGGI ILMU KOMPUTER YOS SUDARSO
PURWOKERTO
2014
2

BAB I
TEORI DASAR

Variabel pointer adalah suatu nilai yang menunjuk pada alamat tertentu pada suatu
lokasi memori. Pointer dapat juga diartikan sebagai suatu nilai yang ditampung dalam sebuah
variabel. Sederhananya, pointer adalah nilai yang menyatakan alamat suatu lokasi.
Pointer banyak dilibatkan dalam pemrograman C/C++, misalnya untuk melewatkan
string dari suatu fungsi ke fungsi lainnya. Penerapan pointer yang paling umum yaitu untuk
menciptakan variabel dinamis yang memungkin pemakaian memori yang belum dipakai
(memori bebas) atau digunakan selama eksekusi program.
Variabel pointer sering disebut penunjuk obyek lain, karena pointer merupakan variabel
yang berisi alamat dari suatu obyek lain.
Suatu variabel pointer dapat dideklarasikan dengan bentuk:
Ti pe_Data *nama_var i abel ;
Sebagai contoh:
fl oat *pu;
Untuk mengatur pointer agar dapat menunjuk ke variabel lain, maka dari awal harus
diisi dengan alamat dari variabel yang akan ditunjuk. Operator & digunakan untuk menyatakan
alamat variabel yang akan ditunjuk. Sebagai contoh: &Y








3

BAB II
PENJELASAN PROGRAM
Pada bab ini akan membahas tentang listing program, mencakup latihan yang dilakukan yaitu
Program Pointer dan tugas praktikum yaitu Program Biodata dengan Pointer dan Tipe Data
Abstrak.
1. Latihan Praktikum
Listing Program Pointer
/ *
* poi nt er . cpp
*
* Cr eat ed on: Mar 13, 2014
* Aut hor : St even
*/

#i ncl ude <i ost ream>
usi ng namespace st d;

i nt mai n ( )
{
st r i ng *ber kumi s, *ber t openg, x1, y1;
st r i ng x="Gat ot kaca";
st r i ng y="Bat man";

ber kumi s=&x;
x1=*ber kumi s;

ber t openg=&y;
y1=*ber t openg;

cout <<"Ber kumi s = "<<x1;
cout <<"\ nBer t openg = "<<y1;
}
Output Program Pointer
Hasil output dari Program Pointer dalah sebagai berikut:


4

Penjelasan Program Pointer
Berikut penjelasan dari Listing Program Pointer:
1. Tanda yang diawali dengan /* dan diakhiri tanda */ merupakan script untuk membuat sebuah
komentar pada pemrograman C++yang jika didalamnya terdapat sebuah perintah atau teks
maka ketika program dirunning atau dijalankan tidak akan dibaca oleh compiler.
2. #include atau disebut sebagai pengarah preprocessor #include berfungsi untuk
menginstruksikan compiler untuk menyertakan berkas C++ sumber yang lain sebelum
kompilasi dimulai
3. <i ost r eam> merupakan header yang digunakan untuk fungsi input (cin), output (cout) dan
endl pada program.
4. using namespace st d; merupakan statement tentang namespace yang digunakan bernama
std. Tujuan dari penulisan kode ini adalah untuk melakukan penulisan kode langsung tanpa
penulisan scope std::.
5. int main ( ) ialah fungsi di mana program akan memberikan nilai balik berupa integer.
6. { menandakan awal program utama.
7. st r i ng *ber kumi s, *ber t openg, x1, y1; merupakan deklarasi variabel pointer *ber kumi s
dan variabel pointer *ber t openg serta variabel x1 dan variabel y1 yang bertipe data string.
8. st r i ng x="Gat ot kaca"; st r i ng y="Bat man"; merupakan deklarasi variabel x yang memiliki
nilai Gatotkaca dan variabel y yang memiliki nilai Batman.
9. ber kumi s=&x; x1=*berkumi s; ber t openg=&y; y1=*ber t openg; merupakan proses assignment
dengan pointer. Simbol & merupakan operator unary yang digunakan pada variabel yang
ditunjuk (x dan y) untuk pointer yang menjadikan alamat dari variabel tersebut ditujukan
kepada variabel pointer.
10. cout <<"Ber kumi s = "<<x1; cout <<"\ nBer t openg = "<<y1; merupakan statement untuk
menampilkan keluaran. \n merupakan karakter khusus (escape sequence characters) yang
berarti newline atau berpindah baris.
11. } menandakan akhir program utama.






5

12. Tugas Praktikum
Listing Program Biodata dengan Pointer dan Tipe Data Abstrak.
/ *
* bi odat a_poi nt er - t ypedef . cpp
*
* Cr eat ed on: May 13, 2014
* Aut hor : St even
*/

#i ncl ude <i ost ream>
usi ng namespace st d;


struct asd
{
st r i ng *nama, *al amat , *t t l , *hobi ;
st r i ng n, a, t , h;
st r i ng n1, a1, t 1, h1;
i nt *NI M, ni , ni 1;
};

i nt mai n( )
{
asd b;

b. n="St even Nyot ohar j o";
b. nama=&b. n;
b. n1=*b. nama;

b. ni =201301001;
b. NI M=&b. ni ;
b. ni 1=*b. NI M;

b. a="J l . Pi nus VI No. 81 Per umahan Tanj ung El ok Pur woker t o";
b. al amat =&b. a;
b. a1=*b. al amat ;

b. t ="Pur woker t o, 24 J anuar i 1996";
b. t t l =&b. t ;
b. t 1=*b. t t l ;

b. h="Fanboyi ng, br owsi ng, mendengar kan musi k, dan ber mai n";
b. hobi =&b. h;
b. h1=*b. hobi ;

cout <<"- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
"<<endl ;
cout <<"\ t \ t . . : : B I O D A T A : : . . "<<endl ;
cout <<"- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
"<<endl ;
cout <<"Nama Lengkap : "<<b. n1<<endl ;
cout <<"NI M : "<<b. ni 1<<endl ;
6

cout <<"Al amat : "<<b. a1<<endl ;
cout <<"TTL : "<<b. t 1<<endl ;
cout <<"Hobi : "<<b. h1<<endl ;
cout <<"- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ";

return 0;
}

Output Program Biodata dengan Pointer dan Tipe Data Abstrak
Hasil output dari Program Biodata dengan Pointer dan Tipe Data Abstrak adalah sebagai berikut:

Penjelasan Program Biodata dengan Pointer dan Tipe Data Abstrak
Berikut penjelasan dari Listing Program Biodata dengan Pointer dan Tipe Data Abstrak:
1. Tanda yang diawali dengan /* dan diakhiri tanda */ merupakan script untuk membuat sebuah
komentar pada pemrograman C++yang jika didalamnya terdapat sebuah perintah atau teks
maka ketika program dirunning atau dijalankan tidak akan dibaca oleh compiler.
2. #include atau disebut sebagai pengarah preprocessor #include berfungsi untuk
menginstruksikan compiler untuk menyertakan berkas C++ sumber yang lain sebelum
kompilasi dimulai
3. <i ost r eam> merupakan header yang digunakan untuk fungsi input (cin), output (cout) dan
endl pada program.
4. using namespace st d; merupakan statement tentang namespace yang digunakan bernama
std. Tujuan dari penulisan kode ini adalah untuk melakukan penulisan kode langsung tanpa
penulisan scope std::.
5. struct asd
{
st r i ng *nama, *al amat , *t t l , *hobi ;
st r i ng n, a, t , h;
st r i ng n1, a1, t 1, h1;
i nt *NI M, ni , ni 1;
};
merupakan deklarasi variabel pointer (*nama, *al amat , *t t l , *hobi , *NI M) dan variabel lain
(n, a, t , h , n1, a1, t 1, h1, ni , ni 1) dengan struct asd.
7

6. int main( ) ialah fungsi di mana program akan memberikan nilai balik berupa integer.
7. { menandakan awal program utama.
8. asd b; mendeklarasikan variabel b bertipe asd sehingga nanti dalam pemanggilan elemen
struct (variabel dalam struct), asd dapat diganti dengan b.
9. b. n="St even Nyot ohar j o";
b. nama=&b. n;
b. n1=*b. nama;

b. ni =201301001;
b. NI M=&b. ni ;
b. ni 1=*b. NI M;

b. a="J l . Pi nus VI No. 81 Per umahan Tanj ung El ok Pur woker t o";
b. al amat =&b. a;
b. a1=*b. al amat ;

b. t ="Pur woker t o, 24 J anuar i 1996";
b. t t l =&b. t ;
b. t 1=*b. t t l ;

b. h="Fanboyi ng, br owsi ng, mendengar kan musi k, dan ber mai n";
b. hobi =&b. h;
b. h1=*b. hobi ;
merupakan proses assignment dengan pointer. Pengaksesan member dari struct asd
menggunakan b diikuti operator dot. Simbol & merupakan operator unary yang digunakan
pada variabel yang ditunjuk untuk pointer yang menjadikan alamat dari variabel tersebut
ditujukan kepada variabel pointer.
10. cout <<"- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
"<<endl ;
cout <<"\ t \ t . . : : B I O D A T A : : . . "<<endl ;
cout <<"- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
"<<endl ;
cout <<"Nama Lengkap : "<<b. n1<<endl ;
cout <<"NI M : "<<b. ni 1<<endl ;
cout <<"Al amat : "<<b. a1<<endl ;
cout <<"TTL : "<<b. t 1<<endl ;
cout <<"Hobi : "<<b. h1<<endl ;
cout <<"- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ";
merupakan statement untuk menampilkan keluaran. \ t merupakan karakter khusus (escape
sequence characters) yang berarti karakter tab horizontal. endl merupakan fungsi manipulator
yang digunakan untuk menyisipkan karakter newline atau pindah baris.
11. return 0; adalah return statement yang memiliki arti untuk mengakhiri program utama tanpa
ada error dalam proses eksekusi.
12. } menandakan akhir program utama.
8


BAB III
KESIMPULAN
Variabel pointer adalah suatu nilai yang menunjuk pada alamat tertentu pada suatu lokasi
memori. Sederhananya, variabel pointer merupakan suatu wadah bagi nilai untuk variabel
lain. Variabel pointer ditandai dengan * pada awal nama variabelnya. Sementara variabel yang
ditunjuk oleh pointer diikuti dengan operator unary berupa simbol &.
J ika suatu variabel sudah ditunjuk oleh pointer, variabel yang ditunjuk oleh pointer dapat
diakses oleh variabel itu sendiri (pengaksesan secara langsung) atau melalui pointer
(pengaksesan secara tidak langsung). Operator indection berupa symbol * digunakan untuk
pengaksesan tidak langsung. Sebagai contoh: *PY
Tipe data variabel pointer dan variabel yang ditunjuk haruslah sama.







9

BAB IV
DAFTAR PUSTAKA
Murya Kusuma Ardhana, Yosef dan Gregorius Airlangga. 2011. Algoritma
Pemrograman C++ Dalam Ilustrasi. Jasakom : Yogyakarta.
Murya Kusuma Ardhana, Yosef. 2013. Struktur Data Dalam Ilustrasi Eclipse Indigo
C++. CAPS : Yogyakarta.

Anda mungkin juga menyukai