1. Adakalanya suatu fungsi tidak perlu nilai
balik.
Misal fungsi yang hanya dimaksudkan untuk
menampilkan suatu keterangan saja.
Tipe nilai balik fungsi yang diperlukan adalah
void
2. void tampilkan_judul()
{
cout<<PT. Aria Perkasa<<endl;
cout<<Jl. Kertadipura 27 A<<endl;
cout<<Kudus<<endl;
}
Pada contoh diatas tidak ada pernyataan
return, mengingat fungsi tidak memiliki nilai balik.
Namun penggunaan pernyataan return secara
eksplisit juga diperkenankan.
Dalam hal ini, pernyataan return yang digunakan
berbentuk:
return
saja.
3. void tampilkan_judul()
{
cout<<PT. Aria Perkasa<<endl;
cout<<Jl. Kertadipura 27 A<<endl;
cout<<Kudus<<endl;
return;//ada return disini
}
Bentuk return seperti
berikut:
return(ungkapan)
Boleh ditulis menjadi:
return ungkapan
4. Lingkup variabel didalam penulisan fungsi
sangat penting, agar tidak salah dalam
menggunakan suatu variabel.
Lingkup variabel menentukan keberadaan
suatu variabel tertentu didalam fungsi.
Ada variabel yang dikenal disuatu fungsi dan
tidak dikenal pada fungsi lain
Namun ada variabel yang diakses oleh semua
fungsi
5. Jenis variabel berdasarkan kelas
penyimpanannya, yang berkaitan dg lingkup
variabel, yaitu:
Variabel otomatis
Variabel eksternal
Variabel statis
6. Variabel yang didefinisikan di dalam suatu
fungsi berlaku sebagai variabel lokal bagi
fungsi. Artinya, variabel tersebut hanya dikenal
didalam fungsi tempat variabel didefinisikan.
Sebagai contoh, suatu fungsi didefinisikan
sebagai berikut:
void alpha()
{
int x=20; //variabel lokal pada alpha()
double y=3.14; //begitu juga variabel ini
cout<<"Pada alpha():x="<<x<<"y="<<y<<endl;
getch();
}
7. #include<iostream.h>
#include<conio.h>
void alpha(); //prototipe fungsi
void main()
{
int x=22; //variabel lokal pada main()
double y=2.22; //begitu juga variabel ini
clrscr(); //hapus layar
cout<<"Pada main():x="<<x<<"y="<<y<<endl;
alpha(); //panggil fungsi alpha
cout<<"Pada main():x="<<x<<"y="<<y<<endl;
}
//BERLANJUT KE SLIDE 8
8. //Definisi fungsi alpha()
void alpha()
{
int x=20; //variabel lokal pada alpha()
double y=3.14; //begitu juga variabel ini
cout<<"Pada alpha():x="<<x<<"y="<<y<<endl;
getch();
}
9. Output :
Tampak bahwa perubahan x dan y pada alpha()
tidak mempengaruhi variabel bernama sama
pada main(). Ini membuktikan bahwa variabel-
variabel tersebut bersifat lokal bagi masing-
masing fungsi yang mendefinisikan.
Variabel seperti x dan y pada fungsi alpha()
biasa disebut sbg variabel otomatis(begitu juga
pada main()).
10. Variabel hanya akan diciptakan pada saat
fungsi dipanggil (dan akan diletakkan ke
stack)
Pada saat fungsi berakhir (selesai
dieksekusi), variabel otomatis menjadi sirna
Tidak ada inisialisasi secara otomatis (saat
variabel diciptakan). Inisialisasi oleh
pemrogram akan dikerjakan setiap kali fungsi
dipanggil
Hanya dapat diakses di dalam fungsi yang
didefinisikannya.
11. Kebalikan dari variabel otomatis
Variabel eksternal adalah variabel yang
didefinisikan diluar fungsi manapun.
Variabel ini dikenal dengan variabel
global, sebab variabel ini dikenal di semua
fungsi.
12. #include<iostream.h>
#include<conio.h>
int oblada=550; // variabel eksternal
void tambah(); //prototipe fungsi
void main()
{
clrscr(); //hapus layar
cout<<oblada<<endl;
tambah();
cout<<oblada<<endl;
tambah();
cout<<oblada<<endl;
tambah();
}
//Definisi fungsi alpha()
void tambah()
{
oblada++; // variabel eksternal dinaikkan
}