I. Tujuan
1. Memahami konsep pointer di dalam Bahasa C
2. Memahami konsep copy value dan copy address
3. Menggunakan pointer di dalam program lainnya
Contoh :
a
*c
*d
Var
Value
Address
TipeData *NamaVariabel
Step :
1. d=&a *d = 2 ; d = A
2. c=&b *c = 3 ; c = B
3. b=*d b = 2 ; &b = B
4. *d=*c *d = 2 ; d = A
Dari contoh di atas terlihat bahwa addres pada variabel pointer dapat berubah
ubah, apabila addres suatu variabel pointer berubah maka valuenya akan berubah sesuai
1: #include<iostream.h>
2: #include<conio.h>
3: void main()
4: {
5: int x;
6: float y;
7: long z;
8:
9: x = 3;
10: y = 3.7;
11: z = 1000;
12:
13: cout<<"isi variabel x = "<<x<<endl;
14: cout<<"isi variabel y = "<<y<<endl;
15: cout<<"isi variabel z = "<<z<<endl;
16:
17: cout<<endl;
18:
19: cout<<"alamat variabel x = "<<&x<<endl;
20: cout<<"alamat variabel y = "<<&y<<endl;
21: cout<<"alamat variabel z = "<<&z<<endl;
22:}
ADT adalah definisi TYPE dan sekumpulan PRIMITIF (operasi dasar) terhadap
TYPE tersebut. Selain itu, dalam sebuah ADT yang lengkap, disertakan pula definisi invarian
dari TYPE dan aksioma yang berlaku. ADT merupakan definisi statik. Definisi type dari
sebuah ADT dapat mengandung sebuah definisi ADT lain.
Misalnya:
terdiri dari ADT JAM dan ADT DATE
penyimpannya)
terface dengan input/output device
dengan, dsb
#include<iostream.h>
typedef struct lingkaran{
float r;
float keliling;
float luas;
};
void kllluas(lingkaran &L);
void main()
{
lingkaran L;
cout<<"masukkan jari-jari :";
cin>>L.r;
kllluas (L);
cout<<" keliling "<<L.keliling<<endl;
cout<<" luas "<<L.luas;
}
void kllluas(lingkaran &L)
{
L.keliling = 2*3.14*L.r;
L.luas =3.14*L.r*L.r;
}
Prototipe dan
Primitif / Algoritma
*d
*e
var
value
address