JURUSAN SISTEM INFORMASI SEKOLAH TINGGI ILMU KOMPUTER YOS SUDARSO PURWOKERTO 2014
2
BAB I TEORI DASAR
Variabel Pointer atau lebih sering disebut dengan pointer adalah suatu nilai yang menunjuk pada alamat tertentu pada suatu lokasi memori. Pointer juga dapat diartikan sebagai suatu nilai yang ditampung dalam sebuah variable. Jika diartikan lebih sederhana, maka pointer adalah suatu nilai yang menyatakan alamat suatu lokasi. Pointer banyak dilibatkan dalam pemrograman C++, misalnya untuk melewatkan string dari suatu fungsi ke fungsi yang lain. Penerapan pointer yang paling umum, yaitu menciptakan variable dinamis, yang memungkinkan untuk memakai memori bebas atau dapat disebut memori yang belum dipakai atau digunakan selama eksekusi program. Variable pointer sering disebut sebagai variable yang menunjuk obyek lain, karena variable pointer merupakan variable yang berisi alamat dari suatu obyek lain, yaitu obyek yang ditunjuk oleh pointer. Suatu variable pointer dapat dideklarasikan dengan bentuk : Tipe*nama_variabel; Untuk mengatur pointer agar dapat menunjuk ke variable lain, yaitu dari awal pointer harus diisi dengan alamat dari variable yang akan ditunujuk. Operator & digunakan untuk menyatakan alamat variable yang akan ditunjuk. Sebagai contoh pointer: &Y Jika suatu variable sudah ditunjuk oleh pointer, variable yang ditunjuk oleh pointer dapat diakses oleh variable itu sendiri (pengaksesan secara langsung) atau melalui pointer (pengaksesan secara tidak langsung). Operator indection, berupa simbol atau tanda * digunakan untuk pengaksesan tidak langsung. Sebagai contoh: *PY
3
BAB II PENJELASAN PROGRAM
Pada penjelasan program bab ini akan dijelaskan mengenai bagaimana melakukan pemrograman C++ dengan menggunakan pointer secara sederhana sesuai dengan modul praktikum. Program 1 /* * Program1.cpp * * Created on: May 13, 2014 * Author: STIKOM32 */
Pembahasan Program 1 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. <iostream> untuk memanggil fungsi cout dan cin dalam C++. 4. using namespace std; adalah standar deviasi dalam sebuah program dalam bahasa pemrograman C++. 5. Tanda kurung kurawal {} dimaksudkan untuk mengawali dan mengakhiri bagian main. 6. Tanda ; digunakan untuk mengakhiri sebuah pernyataan. 7. int main(),menyatakan tipe nilai balik fungsi main. 8. cout dipakai untuk menampilkan teks/data ke layar monitor sehingga menjadi output. 9. int *pu; int nu; int u=1234; Maksudnya adalah int *pu merupakan sebuah variable yang digunakan untuk menampung nilai yaitu u = 1234 dan akan dibantu oleh nu untuk menampung atau memanggil u sebelum kemudian diletakkan ke *pu dan bertipe data integer. 10. pu=&u; nu=*pu; Artinya adalah pu menampung u yang memiliki isi 1234 dan nu menampung pu yang sudah berisi u=1234.
11. cout<<"u= " << u; cout<<"nu= " << nu; Proses pemanggilan u dan nu. 12. return 0 dimaksudkan untuk menyatakan nilai balik main.
5
13. Tanda << adalah tanda spesifik dalam cout. Tanda tersebut menyatakan bahwa nilai di kanannya akan dirim ke layar. 14. cout dan cin disini maksudnya adalah sebagai fungsi input dan output sebuah program. 15. \n digunakan untuk memindahkan kursor ke baris berikutnya.
Program Pointer /* * Pointer.cpp * * Created on: May 13, 2014 * Author: KOMPUTER31 */
#include <iostream> #include <cstring> using namespace std;
int main () { string *a, *b, *c, *d; string x, y, o, p; string x1 = "Gatot Kaca"; string y1 = "Batman"; string o1 = "32"; string p1 = "35";
Pembahasan 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. <iostream> untuk memanggil fungsi cout dan cin dalam C++. 4. using namespace std; adalah standar deviasi dalam sebuah program dalam bahasa pemrograman C++. 5. Tanda kurung kurawal {} dimaksudkan untuk mengawali dan mengakhiri bagian main. 6. Tanda ; digunakan untuk mengakhiri sebuah pernyataan. 7. int main(),menyatakan tipe nilai balik fungsi main. 8. string *a, *b, *c, *d; Maksudnya adalah *a, *b, *c, *d merupakan wadah yang digunakan untuk menampung nilai yang dihasilkan. 9. string x, y, o, p; Maksudnya adalah x, y, o, p merupakan tempat yang akan digunakan sebagai perantara untuk memindahkan / memanggil nilai yang akan diletakkan / dimasukkan ke wadah.
string o1 = "32"; string p1 = "35"; Maksudnya adalah x1, y1, o1, dan p1 penampung nilai awal yang kemudian akan dipindahkan ke dalam wadah yang bertipe data string.
11. a=&x1; x=*a; Maksudnya adalah a menampung x1 yang memiliki isi yaitu Gatot Kaca dan x menampung a yang memiliki isi x1=Gatot Kaca.
12. b=&o1; o=*b; Maksudnya adalah b menampung o1 yang memiliki isi yaitu 32 dan o menampung b yang memiliki isi o1=32.
13. c=&y1; y=*c; Maksudnya adalah c menampung y1 yang memiliki isi yaitu Batman dan y menampung c yang memiliki isi y1=Batman.
14. d=&p1; p=*d; Maksudnya adalah d menampung p1 yang memiliki isi yaitu 35 dan p menampung d yang memiliki isi p1=35.
15. cout<<" Berkumis = "<<x; cout<<"\n"; cout<<" Size Celana = "<<o; cout<<" \n"; cout<<" Bertopeng = "<<y; cout<<"\n"; cout<<" Size Celana = "<<p; Pemanggilan fungsi Pointer untuk selanjutnya di tampilkan hasilnya ke layar. 16. cout dipakai untuk menampilkan teks/data ke layar monitor sehingga menjadi output. 17. return 0 dimaksudkan untuk menyatakan nilai balik main. 18. Tanda << adalah tanda spesifik dalam cout. Tanda tersebut menyatakan bahwa nilai di kanannya akan dirim ke layar. 19. cout dan cin disini maksudnya adalah sebagai fungsi input dan output sebuah program.
8
20. \n digunakan untuk memindahkan kursor ke baris berikutnya.
Program Tugas Praktikum Pada praktikum kali ini kita akan memodifikasi program 6.1 dan 6.2 dengan menggunakan tipe data abstrak (struct, typedef dan typedef & struct).
Program Biodata /* * Biodata1.cpp * * Created on: May 13, 2014 * Author: KOMPUTER31 */
#include <iostream> #include <cstring> using namespace std;
typedef string data;
int main () { data *a, *b, *c, *d, *e; data x, y, o, p, z; data x1 = "Cintia Yosfin Samalle"; data y1 = "Cintia"; data o1 = "cintia_yosfin@ymail.com"; data p1 = "085759055235"; data z1 = "chintiastevani.blogspot.com";
a=&x1; x=*a;
b=&y1; y=*b;
c=&o1; o=*c;
d=&p1; p=*d;
e=&z1; z=*e;
9
cout<<" Nama Lengkap : "<<x; cout<<"\n"; cout<<" Nama Panggilan : "<<y; cout<<" \n"; cout<<" Alamat e-mail : "<<o; cout<<"\n"; cout<<" No. Handphone : "<<p; cout<<"\n"; cout<<" Alamat Blog : "<<z;
return 0; }
Output Program Biodata
Pembahasan Program 8.1 Struct 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. <iostream> untuk memanggil fungsi cout dan cin dalam C++. 4. <cstring> ,digunakan untuk pemanggilan string. 5. using namespace std; adalah standar deviasi dalam sebuah program dalam bahasa pemrograman C++. 6. Tanda kurung kurawal {} dimaksudkan untuk mengawali dan mengakhiri bagian main. 7. Tanda ; digunakan untuk mengakhiri sebuah pernyataan.
10
8. int main(),menyatakan tipe nilai balik fungsi main. 9. typedef string data; Typedef biasanya digunakan untuk memberikan nama alias untuk suatu data, dan dalam kasus ini string diberi nama alias yaitu data. 10. data *a, *b, *c, *d, *e; Maksudnya adalah *a, *b, *c, *d, *e merupakan wadah yang digunakan untuk menampung nilai yang dihasilkan, yang berrtipe data string namun sudah diberi nama alias menjadi data. 11. data x, y, o, p, z; Maksudnya adalah x, y, o, p, z merupakan tempat yang akan digunakan sebagai perantara untuk memindahkan / memanggil nilai yang akan diletakkan / dimasukkan ke wadah. 12. data x1 = "Cintia Yosfin Samalle"; data y1 = "Cintia"; data o1 = "cintia_yosfin@ymail.com"; data p1 = "085759055235"; data z1 = "chintiastevani.blogspot.com"; Maksudnya adalah x1, y1, o1, p1, dan z1 penampung nilai awal yang kemudian akan dipindahkan ke dalam wadah yang bertipe data string dan sudah dimanipulasi / diberi nama alias menjadi data. 13. a=&x1; x=*a; Maksudnya adalah a menampung x1 yang memiliki isi yaitu Cintia Yosfin Samalle dan x menampung a yang memiliki isi x1=Cintia Yosfin Samalle.
14. b=&y1; y=*b; Maksudnya adalah b menampung y1 yang memiliki isi yaitu Cintia dan y menampung b yang memiliki isi y1=Cintia.
15. c=&o1; o=*c; Maksudnya adalah c menampung o1 yang memiliki isi yaitu cintia_yosfin@ymail.com dan o menampung c yang memiliki isi o1=cintia_yosfin@ymail.com.
16. d=&p1; p=*d;
11
Maksudnya adalah d menampung p1 yang memiliki isi yaitu 085759055235 dan p menampung d yang memiliki isi p1=085759055235. 17. e=&z1; z=*e; Maksudnya adalah e menampung z1 yang memiliki isi yaitu chintiastevani.blogspot.com dan z menampung e yang memiliki isi z1=chintiastevani.blogspot.com.
18. cout<<" Nama Lengkap : "<<x; cout<<"\n"; cout<<" Nama Panggilan : "<<y; cout<<" \n"; cout<<" Alamat e-mail : "<<o; cout<<"\n"; cout<<" No. Handphone : "<<p; cout<<"\n"; cout<<" Alamat Blog : "<<z; Pemanggilan fungsi Pointer untuk selanjutnya di tampilkan hasilnya ke layar. 19. cout dipakai untuk menampilkan teks/data ke layar monitor sehingga menjadi output. 20. return 0 dimaksudkan untuk menyatakan nilai balik main. 21. Tanda << adalah tanda spesifik dalam cout. Tanda tersebut menyatakan bahwa nilai di kanannya akan dikirim ke layar. 22. cout dan cin disini maksudnya adalah sebagai fungsi input dan output sebuah program. 23. \n digunakan untuk memindahkan kursor ke baris berikutnya.
12
BAB III KESIMPULAN
Pointer adalah suatu nilai yang menunjuk pada alamat tertentu pada suatu lokasi memori. Pointer juga dapat diartikan sebagai suatu nilai yang ditampung dalam sebuah variable. Lebih sederhana pointer adalah suatu nilai yang menyatakan alamat suatu lokasi. Penerapan pointer yang paling umum, yaitu menciptakan variable dinamis, yang memungkinkan untuk memakai memori bebas atau dapat disebut memori yang belum dipakai atau digunakan selama eksekusi program. Pointer dapat dideklarasikan dengan bentuk : Tipe*nama_variabel; Operator & digunakan untuk menyatakan alamat variable yang akan ditunjuk. Sebagai contoh pointer : &Y Operator indection, berupa simbol atau tanda * digunakan untuk pengaksesan tidak langsung. Sebagai contoh: *PY
13
DAFTAR PUSTAKA 1. Ardhana, YM Kusuma. 2013. Struktur Data dalam Ilustrasi Eclups Indigo C ++. Yogyakarta: CAPS (Center of Academic Publishing Service). 2. Kadir, Abdul. 2012. Buku Pintar C++ Untuk Pemula. Yogyakarta: MediaKom.