SlideShare ist ein Scribd-Unternehmen logo
1 von 14
1
POINTER
 Pointer merupakan satu nilai yang menunjuk alamat
(address) pada lokasi suatu memori komputer. Lokasi memori
tersebut mungkin di wakili oleh sebuah variabel yang mempunyai
nama, atau mungkin juga lokasi bebas dalam memori
 Pointer merupakan alamat dari suatu data, bukan data seperti pada
variabel yang telah di kenal
Syntax :
tipe_data *Nama_Pointer; tipe_data *Nama_Pointer = &Variabel;
Atau
tipe_data *Nama_variabel
Operator Pointer
 Operator pada pointer terdiri dari 2 yaitu:
1. Operator &
Operator & bersifat unary (hanya memerlukan satu operand saja)
Operator & menghasilkan alamat dari operandnya
2. Operator *
Operator * bersifat unary (hanya memerlukan satu operand saja)
Operator * menghasilkan nilai yang berada pada sebuah alamat
Contoh :
int A=9;
int *ptr A;
ptrA = &A;
atau
float B=9.99;
float *ptrB = &B;
2
3
dimana:
 ptrA merupakan pointer to integer (berisi alamat dari variabel A).
 ptrB merupakan pointer to float (berisi alamat dari variabel B).
 *ptrA berisi memori yang ditunjuk oleh ptrA (berisi nilai
bilangan integer = 9).
 *ptrB berisi memori yang ditunjuk oleh ptrB (berisi nilai
bilangan pecahan = 9.99).
Contoh Program C++ :
#include <iostream.h>
#include <conio.h>
void main()
{ int alif = 5;
float ba =7.5;
double ta = 17.777;
clrscr();
cout << “Isi variabel : “ << endl;
cout << “alif =“ <<alif<<endl;
cout << “ba =“ <<ba<<endl;
cout << “ta =“ <<ta<<endl;
cout << “n Alamat variabel : “ << endl;
cout << “alif =“ <<&alif<<endl;
cout << “ba =“ <<&ba<<endl;
cout << “ta =“ <<&ta<<endl;
}
Contoh 2:
#include <iostream.h>
#include <conio.h>
void main()
{ int vint = 55;
int * pint;
clrscr();
pint = &vint;
cout<<“alamat vint =“<<&vint<<endl;
cout<<“pint = “<<pint<<endl;
}
4
Mengakses Nilai Yang Di Tunjuk Pointer
#include <iostream.h>
#include <conio.h>
void main()
{ int vint = 55;
int * pint;
clrscr();
pint = &vint;
cout<<“Nilai yang di tunjuk oleh pint =“<<*pint<<endl;
}
5
 Pointer Void
pada contoh diatas telah diberikan beberapa variabel pointer yang menunjuk ke tipe
data tertentu. Namun dimungkinkan untuk membuat pointer yang tidak bertipe. Caranya
dengan meletakkan kata kunci void pada bagian penentu tipe pointer. contoh : void *ptr;
merupakan pernyataan untuk mendefinisikan ptr sebagai variabel pointer void yang
dapat menunjukkan ke sembarang tipe data.
Contoh :
#include <iostream.h>
#include <conio.h>
void main()
{ clrscr();
void *ptr; // pointer tak bertipe
int vint = 50;
float vfl = 51.5;
ptr = &vint;
cout<<“Nilai yang di tunjuk oleh ptr =“<<*(int*)ptr<<endl; //ptr adl pointer void mk
harus //menyebutkan tipe data yg diakses melalui type cast
ptr = &vfl;
cout<<“Nilai yang di tunjuk oleh ptr =“<<*(float*)ptr<<endl;
}
6
7
Pointer – Array :
 Mempunyai hubungan yang dekat dimana secara internal array juga
menyatakan alamat. Digunakan untuk melakukan akses elemen
array.
Syntax :
tipe_data *Nama_Pointer = Nama_Array;
Contoh didefinisikan :
int tgl_lahir[10] = {24,6,1965};
dan
int *ptgl;
agar ptgl menunjuk ke array mk diperlukan pernyataan
ptgl = tgl_lahir;
Perhatikan pernyataan diatas dimana tidak ada tanda & di depan
tgl_lahir, padahal beberapa contoh di depan menggunakan format
Ptr = & variabel
8
Contoh Program C++ :
#include <iostream.h>
#include <conio.h>
void main()
{ clrscr();
int tgl_lahir[ ] = {24, 6, 1965};
int *ptgl;
ptgl = tgl_lahir;
for (int I = 0; i<3; i++)
cout<<*(ptgl+i)<<endl; // c++ mengetahui bahwa tgl_lahir+(ukuran tipe elemen tgl_lahir)+1
}
Contoh Program C++ :
#include <iostream.h>
#include <conio.h>
void main()
{ clrscr();
int tgl_lahir[ ] = {24, 6, 1965};
int *ptgl;
ptgl = tgl_lahir; // ptgl menunjuk ke elemen pertama dari array
for (int I = 0; i<3; i++)
{ cout<<“ptgl =“<<ptgl<<endl;
cout<<“*ptgl =“<<*ptgl<<endl;
ptgl++; // menunjuk ke elemen berikutnya
}
}
9
Pointer – string:
Contoh :
#include <iostream.h>
#include <conio.h>
void main()
{ clrscr();
char *ptokoh = “ gatotkaca”;
cout<< ptokoh<<endl;
}
Pada contoh diatas akan menyebabkan c++:
 Mangalokasikan ptokoh sebagai variabel pointer yang menunjuk ke data bertipe char
dan menempatkan konstanta string “ gatotkaca” ke suatu lokasi di memori komputer
 Kemudian ptokoh akan menunjuk ke lokasi string “gatotkaca”
Pernyataan diatas menyerupai pernyataan:
Char tokoh[ ] = “ gatotkaca”
Perbedaannya :
 Ptokoh adalah pointer yang dengan mudah dapat diatur agar menunjuk ke data string
 Tokoh adalah array yang menyatakan alamat yang konsatan tidak dapat di ubah.
Yang dapat diubah adalah elemen arraynya
10
#include <iostream.h>
#include <conio.h>
void main()
{ clrscr();
char tokoh[ ] = “ gatotkaca”;
char *ptokoh = “ gatotkaca”;
cout<< “tokoh = “<<tokoh<<endl;
cout<< “ptokoh =“<<ptokoh<<endl;
// tokoh ++; //tidak diperkenankan
Ptokoh++; //diperkenankan
Cout<<“ptokoh=“<<ptokoh<<endl;
}
Pointer dan Fungsi
 Pointer biasa di gunakan di dalam argumen fungsi apabila nilai argumen
dimaksudkan untuk di ubah di dalam fungsi
Pointer sebagai Argument Fungsi
#include <iostream.h>
#include <conio.h>
Void ubah_nilai(int&x);
Void main()
{
clrscr();
int pinokio = 80;
cout<<“nilai mula-mula untuk pinokio :”<<pinokio<<endl;
ubah_nilai(pinokio);
cout<<“nilai untuk pinokio sekarang :”<<pinokio<<endl;
}
Void ubah_nilai(int&x)
{ x=95;
}
11
 Pointer sebagai keluaran Fungsi
Suatu fungsi dapat dibuat agar keluarannya berupa pointer.
Misal :
#include <iostream.h>
#include <conio.h>
Char *nama_bulan(int n); // protipe
void main()
{ int bln;
clrscr();
cout<<“Bulan(1..12):”;
cin>>bln;
cout<<nama_bulan(bln)<<endl;
}
Char *nama_bulan(int n)
{
12
static char *bulan [ ] =
{
“kode bulan salah”,
“Januari”,
“Februari”,
“Maret”,
“April”,
“Mei”,
“Juni”,
“Juli”,
“Agustus”,
“September”,
“Oktober”,
“November”,
“Desember”
};
return((n<1||n>12)?bulan[0] : bulan[n]);
}
13
 Pada definisi fungsi diatas,
Char *nama_bulan(int n)
Menyatakan bahwa nilai balik fungsi nama_bulan() berupa pointer yang
menunjuk ke data bertipe char (string).
Di bagian akhir fungsi, pernyataan :
return((n<1||n>12)?bulan[0] : bulan[n]);
Menyatakan nilai balik fungsi berupa pointer menunjuk ke :
 String “kode bulan salah”(bulan[0]), jika argumen fungsi bernilai kurang dari
1 atau lebih besar daripada 12
 Bulan[n], kalau n bernilai antara 1 sampai dengan 12
14

Weitere ähnliche Inhalte

Was ist angesagt?

Materi kuliah 19 fungsi part 2
Materi kuliah 19   fungsi part 2Materi kuliah 19   fungsi part 2
Materi kuliah 19 fungsi part 2Budi Yono
 
Materi kuliah 19 fungsi part 2
Materi kuliah 19   fungsi part 2Materi kuliah 19   fungsi part 2
Materi kuliah 19 fungsi part 2Budi Yono
 
Tugas modul fungsi
Tugas modul fungsiTugas modul fungsi
Tugas modul fungsiFajar Umam
 
Function
FunctionFunction
Functionwindi1
 
Pertemuan 11 : Algoritma & Pemrograman
Pertemuan 11 : Algoritma & PemrogramanPertemuan 11 : Algoritma & Pemrograman
Pertemuan 11 : Algoritma & PemrogramanTri Retna
 
Ix struktur pointer
Ix struktur pointerIx struktur pointer
Ix struktur pointerDhan junkie
 
Materi kuliah 03 pointer part 1
Materi kuliah 03   pointer part 1Materi kuliah 03   pointer part 1
Materi kuliah 03 pointer part 1Budi Yono
 
Fungsi dan Array Pada C++
Fungsi dan Array Pada C++Fungsi dan Array Pada C++
Fungsi dan Array Pada C++Toro Jr.
 

Was ist angesagt? (14)

Pointer
PointerPointer
Pointer
 
Pertemuan 10 Pointer dan Macro
Pertemuan 10 Pointer dan MacroPertemuan 10 Pointer dan Macro
Pertemuan 10 Pointer dan Macro
 
Materi kuliah 19 fungsi part 2
Materi kuliah 19   fungsi part 2Materi kuliah 19   fungsi part 2
Materi kuliah 19 fungsi part 2
 
Materi kuliah 19 fungsi part 2
Materi kuliah 19   fungsi part 2Materi kuliah 19   fungsi part 2
Materi kuliah 19 fungsi part 2
 
Tugas modul fungsi
Tugas modul fungsiTugas modul fungsi
Tugas modul fungsi
 
Pertemuan 12 Structure
Pertemuan 12 StructurePertemuan 12 Structure
Pertemuan 12 Structure
 
Pertemuan II Function
Pertemuan II FunctionPertemuan II Function
Pertemuan II Function
 
Function
FunctionFunction
Function
 
Function
FunctionFunction
Function
 
String baru
String baruString baru
String baru
 
Pertemuan 11 : Algoritma & Pemrograman
Pertemuan 11 : Algoritma & PemrogramanPertemuan 11 : Algoritma & Pemrograman
Pertemuan 11 : Algoritma & Pemrograman
 
Ix struktur pointer
Ix struktur pointerIx struktur pointer
Ix struktur pointer
 
Materi kuliah 03 pointer part 1
Materi kuliah 03   pointer part 1Materi kuliah 03   pointer part 1
Materi kuliah 03 pointer part 1
 
Fungsi dan Array Pada C++
Fungsi dan Array Pada C++Fungsi dan Array Pada C++
Fungsi dan Array Pada C++
 

Andere mochten auch

My trip to new york city
My trip to new york cityMy trip to new york city
My trip to new york cityronson15
 
Каталог 16 2014
Каталог 16 2014Каталог 16 2014
Каталог 16 2014j_barinova
 
Uberlina
UberlinaUberlina
Uberlinabaiarin
 
Lesson 5 labor
Lesson 5 labor Lesson 5 labor
Lesson 5 labor tonyabur
 
MEDICARE HEALTHCARE CHARGE DISPARITY ANALYSIS
MEDICARE HEALTHCARE CHARGE DISPARITY ANALYSISMEDICARE HEALTHCARE CHARGE DISPARITY ANALYSIS
MEDICARE HEALTHCARE CHARGE DISPARITY ANALYSIShiij
 
Wisdom letter2
Wisdom letter2Wisdom letter2
Wisdom letter2fayaz248
 

Andere mochten auch (7)

My trip to new york city
My trip to new york cityMy trip to new york city
My trip to new york city
 
Каталог 16 2014
Каталог 16 2014Каталог 16 2014
Каталог 16 2014
 
Uberlina
UberlinaUberlina
Uberlina
 
Lesson 5 labor
Lesson 5 labor Lesson 5 labor
Lesson 5 labor
 
Perintah Internal command
Perintah Internal commandPerintah Internal command
Perintah Internal command
 
MEDICARE HEALTHCARE CHARGE DISPARITY ANALYSIS
MEDICARE HEALTHCARE CHARGE DISPARITY ANALYSISMEDICARE HEALTHCARE CHARGE DISPARITY ANALYSIS
MEDICARE HEALTHCARE CHARGE DISPARITY ANALYSIS
 
Wisdom letter2
Wisdom letter2Wisdom letter2
Wisdom letter2
 

Ähnlich wie POINTER-FUNGSI

Materi kuliah 23 pointer part 3
Materi kuliah 23   pointer part 3Materi kuliah 23   pointer part 3
Materi kuliah 23 pointer part 3kua
 
Materi kuliah 23 pointer part 3
Materi kuliah 23   pointer part 3Materi kuliah 23   pointer part 3
Materi kuliah 23 pointer part 3Budi Yono
 
MATERI POINTER TKJ K13
MATERI POINTER TKJ K13MATERI POINTER TKJ K13
MATERI POINTER TKJ K13Ali Must Can
 
Materi kuliah 05 pointer part 3
Materi kuliah 05   pointer part 3Materi kuliah 05   pointer part 3
Materi kuliah 05 pointer part 3kua
 
Materi kuliah 05 pointer part 3
Materi kuliah 05   pointer part 3Materi kuliah 05   pointer part 3
Materi kuliah 05 pointer part 3Budi Yono
 
Materi kuliah 05 pointer part 3
Materi kuliah 05   pointer part 3Materi kuliah 05   pointer part 3
Materi kuliah 05 pointer part 3Budi Yono
 
Materi kuliah 03 pointer part 1
Materi kuliah 03   pointer part 1Materi kuliah 03   pointer part 1
Materi kuliah 03 pointer part 1kua
 
Materi kuliah 03 pointer part 1
Materi kuliah 03   pointer part 1Materi kuliah 03   pointer part 1
Materi kuliah 03 pointer part 1Budi Yono
 
Pertemuan 8.ppt
Pertemuan 8.pptPertemuan 8.ppt
Pertemuan 8.pptfauziahUG
 
Materi kuliah 21 pointer part 1
Materi kuliah 21   pointer part 1Materi kuliah 21   pointer part 1
Materi kuliah 21 pointer part 1Budi Yono
 
Materi kuliah 21 pointer part 1
Materi kuliah 21   pointer part 1Materi kuliah 21   pointer part 1
Materi kuliah 21 pointer part 1kua
 
Materi kuliah 21 pointer part 1
Materi kuliah 21   pointer part 1Materi kuliah 21   pointer part 1
Materi kuliah 21 pointer part 1Budi Yono
 
Pemrograman C++ - Pointer
Pemrograman C++ - PointerPemrograman C++ - Pointer
Pemrograman C++ - PointerKuliahKita
 
PPT-UEU-Bahasa-Pemrograman-Pertemuan-9.pptx
PPT-UEU-Bahasa-Pemrograman-Pertemuan-9.pptxPPT-UEU-Bahasa-Pemrograman-Pertemuan-9.pptx
PPT-UEU-Bahasa-Pemrograman-Pertemuan-9.pptxhudriyah1
 

Ähnlich wie POINTER-FUNGSI (20)

Materi kuliah 23 pointer part 3
Materi kuliah 23   pointer part 3Materi kuliah 23   pointer part 3
Materi kuliah 23 pointer part 3
 
Materi kuliah 23 pointer part 3
Materi kuliah 23   pointer part 3Materi kuliah 23   pointer part 3
Materi kuliah 23 pointer part 3
 
MATERI POINTER TKJ K13
MATERI POINTER TKJ K13MATERI POINTER TKJ K13
MATERI POINTER TKJ K13
 
Materi kuliah 05 pointer part 3
Materi kuliah 05   pointer part 3Materi kuliah 05   pointer part 3
Materi kuliah 05 pointer part 3
 
Materi kuliah 05 pointer part 3
Materi kuliah 05   pointer part 3Materi kuliah 05   pointer part 3
Materi kuliah 05 pointer part 3
 
Materi kuliah 05 pointer part 3
Materi kuliah 05   pointer part 3Materi kuliah 05   pointer part 3
Materi kuliah 05 pointer part 3
 
Materi kuliah 03 pointer part 1
Materi kuliah 03   pointer part 1Materi kuliah 03   pointer part 1
Materi kuliah 03 pointer part 1
 
Materi kuliah 03 pointer part 1
Materi kuliah 03   pointer part 1Materi kuliah 03   pointer part 1
Materi kuliah 03 pointer part 1
 
Pointer.ppt
Pointer.pptPointer.ppt
Pointer.ppt
 
Pertemuan 8.ppt
Pertemuan 8.pptPertemuan 8.ppt
Pertemuan 8.ppt
 
Pertemuan5.ppt
Pertemuan5.pptPertemuan5.ppt
Pertemuan5.ppt
 
Pointer
PointerPointer
Pointer
 
Materi kuliah 21 pointer part 1
Materi kuliah 21   pointer part 1Materi kuliah 21   pointer part 1
Materi kuliah 21 pointer part 1
 
pertemuan 3.pptx
pertemuan 3.pptxpertemuan 3.pptx
pertemuan 3.pptx
 
Pertemuan6.ppt
Pertemuan6.pptPertemuan6.ppt
Pertemuan6.ppt
 
Materi kuliah 21 pointer part 1
Materi kuliah 21   pointer part 1Materi kuliah 21   pointer part 1
Materi kuliah 21 pointer part 1
 
Materi kuliah 21 pointer part 1
Materi kuliah 21   pointer part 1Materi kuliah 21   pointer part 1
Materi kuliah 21 pointer part 1
 
Pemrograman C++ - Pointer
Pemrograman C++ - PointerPemrograman C++ - Pointer
Pemrograman C++ - Pointer
 
Structure and pointer
Structure and pointerStructure and pointer
Structure and pointer
 
PPT-UEU-Bahasa-Pemrograman-Pertemuan-9.pptx
PPT-UEU-Bahasa-Pemrograman-Pertemuan-9.pptxPPT-UEU-Bahasa-Pemrograman-Pertemuan-9.pptx
PPT-UEU-Bahasa-Pemrograman-Pertemuan-9.pptx
 

Mehr von lembayungtirta (20)

Tgs orkom
Tgs orkomTgs orkom
Tgs orkom
 
Soal organisasi komputer
Soal organisasi komputerSoal organisasi komputer
Soal organisasi komputer
 
Soal essai orkom 09
Soal  essai  orkom 09Soal  essai  orkom 09
Soal essai orkom 09
 
Sap 0 rkom
Sap 0 rkomSap 0 rkom
Sap 0 rkom
 
Ok 12 perform_1
Ok 12 perform_1Ok 12 perform_1
Ok 12 perform_1
 
Ok 10 org cpu
Ok 10 org cpuOk 10 org cpu
Ok 10 org cpu
 
Ok 11 operasi cpu
Ok 11 operasi  cpuOk 11 operasi  cpu
Ok 11 operasi cpu
 
Ok 9 pembagian
Ok 9 pembagianOk 9 pembagian
Ok 9 pembagian
 
Ok 8 perkalian
Ok 8 perkalianOk 8 perkalian
Ok 8 perkalian
 
Ok 6 alu
Ok 6 aluOk 6 alu
Ok 6 alu
 
Ok 5 float
Ok 5 floatOk 5 float
Ok 5 float
 
Ok 4 pos_neg
Ok 4 pos_negOk 4 pos_neg
Ok 4 pos_neg
 
Ok 3 rep data2
Ok 3 rep  data2Ok 3 rep  data2
Ok 3 rep data2
 
Ok 2 rep data1
Ok 2 rep  data1Ok 2 rep  data1
Ok 2 rep data1
 
Ok 1 intro
Ok 1 introOk 1 intro
Ok 1 intro
 
Listrik8
Listrik8Listrik8
Listrik8
 
Listrik10
Listrik10Listrik10
Listrik10
 
Listrik7.
Listrik7.Listrik7.
Listrik7.
 
Listrik6.
Listrik6.Listrik6.
Listrik6.
 
Listrik5
Listrik5Listrik5
Listrik5
 

Kürzlich hochgeladen

Pertemuan 3-bioavailabilitas-dan-bioekivalensi.ppt
Pertemuan 3-bioavailabilitas-dan-bioekivalensi.pptPertemuan 3-bioavailabilitas-dan-bioekivalensi.ppt
Pertemuan 3-bioavailabilitas-dan-bioekivalensi.pptNabilahKhairunnisa6
 
Dinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup Bangsa
Dinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup BangsaDinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup Bangsa
Dinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup BangsaEzraCalva
 
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptx
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptxMATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptx
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptxrofikpriyanto2
 
aksi nyata pendidikan inklusif.pelatihan mandiri pmm
aksi nyata pendidikan inklusif.pelatihan mandiri pmmaksi nyata pendidikan inklusif.pelatihan mandiri pmm
aksi nyata pendidikan inklusif.pelatihan mandiri pmmeunikekambe10
 
RENCANA + Link2 Materi TRAINING "Effective LEADERSHIP & SUPERVISORY SKILL",
RENCANA + Link2 Materi TRAINING "Effective LEADERSHIP & SUPERVISORY  SKILL",RENCANA + Link2 Materi TRAINING "Effective LEADERSHIP & SUPERVISORY  SKILL",
RENCANA + Link2 Materi TRAINING "Effective LEADERSHIP & SUPERVISORY SKILL",Kanaidi ken
 
LATIHAN SOAL SISTEM PENCERNAAN KELAS 11pptx
LATIHAN SOAL SISTEM PENCERNAAN KELAS 11pptxLATIHAN SOAL SISTEM PENCERNAAN KELAS 11pptx
LATIHAN SOAL SISTEM PENCERNAAN KELAS 11pptxnataliadwiasty
 
slide presentation bab 2 sain form 2.pdf
slide presentation bab 2 sain form 2.pdfslide presentation bab 2 sain form 2.pdf
slide presentation bab 2 sain form 2.pdfNURAFIFAHBINTIJAMALU
 
MA Kelas XII Bab 1 materi musik mkontemnporerFase F.pdf
MA Kelas XII  Bab 1 materi musik mkontemnporerFase F.pdfMA Kelas XII  Bab 1 materi musik mkontemnporerFase F.pdf
MA Kelas XII Bab 1 materi musik mkontemnporerFase F.pdfcicovendra
 
MTK BAB 5 PENGOLAHAN DATA (Materi 2).pptx
MTK BAB 5 PENGOLAHAN DATA (Materi 2).pptxMTK BAB 5 PENGOLAHAN DATA (Materi 2).pptx
MTK BAB 5 PENGOLAHAN DATA (Materi 2).pptxssuser0239c1
 
Edukasi Haji 2023 pembinaan jemaah hajii
Edukasi Haji 2023 pembinaan jemaah hajiiEdukasi Haji 2023 pembinaan jemaah hajii
Edukasi Haji 2023 pembinaan jemaah hajiiIntanHanifah4
 
Teks ucapan Majlis Perpisahan Lambaian Kasih
Teks ucapan Majlis Perpisahan Lambaian KasihTeks ucapan Majlis Perpisahan Lambaian Kasih
Teks ucapan Majlis Perpisahan Lambaian Kasihssuserfcb9e3
 
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptxKeberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptxLeniMawarti1
 
1.2.a.6. Demonstrasi Konstektual - Modul 1.2 (Shinta Novianti - CGP A10).pdf
1.2.a.6. Demonstrasi Konstektual - Modul 1.2 (Shinta Novianti - CGP A10).pdf1.2.a.6. Demonstrasi Konstektual - Modul 1.2 (Shinta Novianti - CGP A10).pdf
1.2.a.6. Demonstrasi Konstektual - Modul 1.2 (Shinta Novianti - CGP A10).pdfShintaNovianti1
 
Teknik Menjawab Kertas P.Moral SPM 2024.pptx
Teknik Menjawab Kertas P.Moral SPM  2024.pptxTeknik Menjawab Kertas P.Moral SPM  2024.pptx
Teknik Menjawab Kertas P.Moral SPM 2024.pptxwongcp2
 
Pembahasan Soal UKOM gerontik persiapan ukomnas
Pembahasan Soal UKOM gerontik persiapan ukomnasPembahasan Soal UKOM gerontik persiapan ukomnas
Pembahasan Soal UKOM gerontik persiapan ukomnasAZakariaAmien1
 
Pembuktian rumus volume dan luas permukaan bangung ruang Tabung, Limas, Keruc...
Pembuktian rumus volume dan luas permukaan bangung ruang Tabung, Limas, Keruc...Pembuktian rumus volume dan luas permukaan bangung ruang Tabung, Limas, Keruc...
Pembuktian rumus volume dan luas permukaan bangung ruang Tabung, Limas, Keruc...NiswatuzZahroh
 
Modul Ajar Bahasa Indonesia Kelas 8 Fase D
Modul Ajar Bahasa Indonesia Kelas 8 Fase DModul Ajar Bahasa Indonesia Kelas 8 Fase D
Modul Ajar Bahasa Indonesia Kelas 8 Fase DAbdiera
 
PPT kecerdasan emosi dan pengendalian diri.pptx
PPT kecerdasan emosi dan pengendalian diri.pptxPPT kecerdasan emosi dan pengendalian diri.pptx
PPT kecerdasan emosi dan pengendalian diri.pptxINyomanAgusSeputraSP
 
PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.
PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.
PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.aechacha366
 
RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...
RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...
RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...Kanaidi ken
 

Kürzlich hochgeladen (20)

Pertemuan 3-bioavailabilitas-dan-bioekivalensi.ppt
Pertemuan 3-bioavailabilitas-dan-bioekivalensi.pptPertemuan 3-bioavailabilitas-dan-bioekivalensi.ppt
Pertemuan 3-bioavailabilitas-dan-bioekivalensi.ppt
 
Dinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup Bangsa
Dinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup BangsaDinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup Bangsa
Dinamika perwujudan Pancasila sebagai Dasar Negara dan Pandangan Hidup Bangsa
 
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptx
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptxMATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptx
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptx
 
aksi nyata pendidikan inklusif.pelatihan mandiri pmm
aksi nyata pendidikan inklusif.pelatihan mandiri pmmaksi nyata pendidikan inklusif.pelatihan mandiri pmm
aksi nyata pendidikan inklusif.pelatihan mandiri pmm
 
RENCANA + Link2 Materi TRAINING "Effective LEADERSHIP & SUPERVISORY SKILL",
RENCANA + Link2 Materi TRAINING "Effective LEADERSHIP & SUPERVISORY  SKILL",RENCANA + Link2 Materi TRAINING "Effective LEADERSHIP & SUPERVISORY  SKILL",
RENCANA + Link2 Materi TRAINING "Effective LEADERSHIP & SUPERVISORY SKILL",
 
LATIHAN SOAL SISTEM PENCERNAAN KELAS 11pptx
LATIHAN SOAL SISTEM PENCERNAAN KELAS 11pptxLATIHAN SOAL SISTEM PENCERNAAN KELAS 11pptx
LATIHAN SOAL SISTEM PENCERNAAN KELAS 11pptx
 
slide presentation bab 2 sain form 2.pdf
slide presentation bab 2 sain form 2.pdfslide presentation bab 2 sain form 2.pdf
slide presentation bab 2 sain form 2.pdf
 
MA Kelas XII Bab 1 materi musik mkontemnporerFase F.pdf
MA Kelas XII  Bab 1 materi musik mkontemnporerFase F.pdfMA Kelas XII  Bab 1 materi musik mkontemnporerFase F.pdf
MA Kelas XII Bab 1 materi musik mkontemnporerFase F.pdf
 
MTK BAB 5 PENGOLAHAN DATA (Materi 2).pptx
MTK BAB 5 PENGOLAHAN DATA (Materi 2).pptxMTK BAB 5 PENGOLAHAN DATA (Materi 2).pptx
MTK BAB 5 PENGOLAHAN DATA (Materi 2).pptx
 
Edukasi Haji 2023 pembinaan jemaah hajii
Edukasi Haji 2023 pembinaan jemaah hajiiEdukasi Haji 2023 pembinaan jemaah hajii
Edukasi Haji 2023 pembinaan jemaah hajii
 
Teks ucapan Majlis Perpisahan Lambaian Kasih
Teks ucapan Majlis Perpisahan Lambaian KasihTeks ucapan Majlis Perpisahan Lambaian Kasih
Teks ucapan Majlis Perpisahan Lambaian Kasih
 
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptxKeberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
 
1.2.a.6. Demonstrasi Konstektual - Modul 1.2 (Shinta Novianti - CGP A10).pdf
1.2.a.6. Demonstrasi Konstektual - Modul 1.2 (Shinta Novianti - CGP A10).pdf1.2.a.6. Demonstrasi Konstektual - Modul 1.2 (Shinta Novianti - CGP A10).pdf
1.2.a.6. Demonstrasi Konstektual - Modul 1.2 (Shinta Novianti - CGP A10).pdf
 
Teknik Menjawab Kertas P.Moral SPM 2024.pptx
Teknik Menjawab Kertas P.Moral SPM  2024.pptxTeknik Menjawab Kertas P.Moral SPM  2024.pptx
Teknik Menjawab Kertas P.Moral SPM 2024.pptx
 
Pembahasan Soal UKOM gerontik persiapan ukomnas
Pembahasan Soal UKOM gerontik persiapan ukomnasPembahasan Soal UKOM gerontik persiapan ukomnas
Pembahasan Soal UKOM gerontik persiapan ukomnas
 
Pembuktian rumus volume dan luas permukaan bangung ruang Tabung, Limas, Keruc...
Pembuktian rumus volume dan luas permukaan bangung ruang Tabung, Limas, Keruc...Pembuktian rumus volume dan luas permukaan bangung ruang Tabung, Limas, Keruc...
Pembuktian rumus volume dan luas permukaan bangung ruang Tabung, Limas, Keruc...
 
Modul Ajar Bahasa Indonesia Kelas 8 Fase D
Modul Ajar Bahasa Indonesia Kelas 8 Fase DModul Ajar Bahasa Indonesia Kelas 8 Fase D
Modul Ajar Bahasa Indonesia Kelas 8 Fase D
 
PPT kecerdasan emosi dan pengendalian diri.pptx
PPT kecerdasan emosi dan pengendalian diri.pptxPPT kecerdasan emosi dan pengendalian diri.pptx
PPT kecerdasan emosi dan pengendalian diri.pptx
 
PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.
PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.
PUEBI.bahasa Indonesia/pedoman umum ejaan bahasa Indonesia pptx.
 
RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...
RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...
RENCANA + Link2 Materi Pelatihan/BimTek "Teknik Perhitungan & Verifikasi TKDN...
 

POINTER-FUNGSI

  • 1. 1 POINTER  Pointer merupakan satu nilai yang menunjuk alamat (address) pada lokasi suatu memori komputer. Lokasi memori tersebut mungkin di wakili oleh sebuah variabel yang mempunyai nama, atau mungkin juga lokasi bebas dalam memori  Pointer merupakan alamat dari suatu data, bukan data seperti pada variabel yang telah di kenal Syntax : tipe_data *Nama_Pointer; tipe_data *Nama_Pointer = &Variabel; Atau tipe_data *Nama_variabel
  • 2. Operator Pointer  Operator pada pointer terdiri dari 2 yaitu: 1. Operator & Operator & bersifat unary (hanya memerlukan satu operand saja) Operator & menghasilkan alamat dari operandnya 2. Operator * Operator * bersifat unary (hanya memerlukan satu operand saja) Operator * menghasilkan nilai yang berada pada sebuah alamat Contoh : int A=9; int *ptr A; ptrA = &A; atau float B=9.99; float *ptrB = &B; 2
  • 3. 3 dimana:  ptrA merupakan pointer to integer (berisi alamat dari variabel A).  ptrB merupakan pointer to float (berisi alamat dari variabel B).  *ptrA berisi memori yang ditunjuk oleh ptrA (berisi nilai bilangan integer = 9).  *ptrB berisi memori yang ditunjuk oleh ptrB (berisi nilai bilangan pecahan = 9.99). Contoh Program C++ : #include <iostream.h> #include <conio.h> void main() { int alif = 5; float ba =7.5; double ta = 17.777; clrscr();
  • 4. cout << “Isi variabel : “ << endl; cout << “alif =“ <<alif<<endl; cout << “ba =“ <<ba<<endl; cout << “ta =“ <<ta<<endl; cout << “n Alamat variabel : “ << endl; cout << “alif =“ <<&alif<<endl; cout << “ba =“ <<&ba<<endl; cout << “ta =“ <<&ta<<endl; } Contoh 2: #include <iostream.h> #include <conio.h> void main() { int vint = 55; int * pint; clrscr(); pint = &vint; cout<<“alamat vint =“<<&vint<<endl; cout<<“pint = “<<pint<<endl; } 4
  • 5. Mengakses Nilai Yang Di Tunjuk Pointer #include <iostream.h> #include <conio.h> void main() { int vint = 55; int * pint; clrscr(); pint = &vint; cout<<“Nilai yang di tunjuk oleh pint =“<<*pint<<endl; } 5
  • 6.  Pointer Void pada contoh diatas telah diberikan beberapa variabel pointer yang menunjuk ke tipe data tertentu. Namun dimungkinkan untuk membuat pointer yang tidak bertipe. Caranya dengan meletakkan kata kunci void pada bagian penentu tipe pointer. contoh : void *ptr; merupakan pernyataan untuk mendefinisikan ptr sebagai variabel pointer void yang dapat menunjukkan ke sembarang tipe data. Contoh : #include <iostream.h> #include <conio.h> void main() { clrscr(); void *ptr; // pointer tak bertipe int vint = 50; float vfl = 51.5; ptr = &vint; cout<<“Nilai yang di tunjuk oleh ptr =“<<*(int*)ptr<<endl; //ptr adl pointer void mk harus //menyebutkan tipe data yg diakses melalui type cast ptr = &vfl; cout<<“Nilai yang di tunjuk oleh ptr =“<<*(float*)ptr<<endl; } 6
  • 7. 7 Pointer – Array :  Mempunyai hubungan yang dekat dimana secara internal array juga menyatakan alamat. Digunakan untuk melakukan akses elemen array. Syntax : tipe_data *Nama_Pointer = Nama_Array; Contoh didefinisikan : int tgl_lahir[10] = {24,6,1965}; dan int *ptgl; agar ptgl menunjuk ke array mk diperlukan pernyataan ptgl = tgl_lahir; Perhatikan pernyataan diatas dimana tidak ada tanda & di depan tgl_lahir, padahal beberapa contoh di depan menggunakan format Ptr = & variabel
  • 8. 8 Contoh Program C++ : #include <iostream.h> #include <conio.h> void main() { clrscr(); int tgl_lahir[ ] = {24, 6, 1965}; int *ptgl; ptgl = tgl_lahir; for (int I = 0; i<3; i++) cout<<*(ptgl+i)<<endl; // c++ mengetahui bahwa tgl_lahir+(ukuran tipe elemen tgl_lahir)+1 } Contoh Program C++ : #include <iostream.h> #include <conio.h> void main() { clrscr(); int tgl_lahir[ ] = {24, 6, 1965}; int *ptgl; ptgl = tgl_lahir; // ptgl menunjuk ke elemen pertama dari array for (int I = 0; i<3; i++) { cout<<“ptgl =“<<ptgl<<endl; cout<<“*ptgl =“<<*ptgl<<endl; ptgl++; // menunjuk ke elemen berikutnya } }
  • 9. 9 Pointer – string: Contoh : #include <iostream.h> #include <conio.h> void main() { clrscr(); char *ptokoh = “ gatotkaca”; cout<< ptokoh<<endl; } Pada contoh diatas akan menyebabkan c++:  Mangalokasikan ptokoh sebagai variabel pointer yang menunjuk ke data bertipe char dan menempatkan konstanta string “ gatotkaca” ke suatu lokasi di memori komputer  Kemudian ptokoh akan menunjuk ke lokasi string “gatotkaca” Pernyataan diatas menyerupai pernyataan: Char tokoh[ ] = “ gatotkaca” Perbedaannya :  Ptokoh adalah pointer yang dengan mudah dapat diatur agar menunjuk ke data string  Tokoh adalah array yang menyatakan alamat yang konsatan tidak dapat di ubah. Yang dapat diubah adalah elemen arraynya
  • 10. 10 #include <iostream.h> #include <conio.h> void main() { clrscr(); char tokoh[ ] = “ gatotkaca”; char *ptokoh = “ gatotkaca”; cout<< “tokoh = “<<tokoh<<endl; cout<< “ptokoh =“<<ptokoh<<endl; // tokoh ++; //tidak diperkenankan Ptokoh++; //diperkenankan Cout<<“ptokoh=“<<ptokoh<<endl; }
  • 11. Pointer dan Fungsi  Pointer biasa di gunakan di dalam argumen fungsi apabila nilai argumen dimaksudkan untuk di ubah di dalam fungsi Pointer sebagai Argument Fungsi #include <iostream.h> #include <conio.h> Void ubah_nilai(int&x); Void main() { clrscr(); int pinokio = 80; cout<<“nilai mula-mula untuk pinokio :”<<pinokio<<endl; ubah_nilai(pinokio); cout<<“nilai untuk pinokio sekarang :”<<pinokio<<endl; } Void ubah_nilai(int&x) { x=95; } 11
  • 12.  Pointer sebagai keluaran Fungsi Suatu fungsi dapat dibuat agar keluarannya berupa pointer. Misal : #include <iostream.h> #include <conio.h> Char *nama_bulan(int n); // protipe void main() { int bln; clrscr(); cout<<“Bulan(1..12):”; cin>>bln; cout<<nama_bulan(bln)<<endl; } Char *nama_bulan(int n) { 12
  • 13. static char *bulan [ ] = { “kode bulan salah”, “Januari”, “Februari”, “Maret”, “April”, “Mei”, “Juni”, “Juli”, “Agustus”, “September”, “Oktober”, “November”, “Desember” }; return((n<1||n>12)?bulan[0] : bulan[n]); } 13
  • 14.  Pada definisi fungsi diatas, Char *nama_bulan(int n) Menyatakan bahwa nilai balik fungsi nama_bulan() berupa pointer yang menunjuk ke data bertipe char (string). Di bagian akhir fungsi, pernyataan : return((n<1||n>12)?bulan[0] : bulan[n]); Menyatakan nilai balik fungsi berupa pointer menunjuk ke :  String “kode bulan salah”(bulan[0]), jika argumen fungsi bernilai kurang dari 1 atau lebih besar daripada 12  Bulan[n], kalau n bernilai antara 1 sampai dengan 12 14