Fungsi dari Return pada Function

Posted on   Februari 28, 2018   |   Last Modified   Februari 28, 2018
Fungsi Return

Pada artikel-artikel sebelumnya kita sering menggunakan pernyataan return, yang biasanya digunakan di akhir dari function utama dan function kustom. Fungsi dari return tidak jauh dengan arti dari istilah return sendiri, yaitu kembali.

Fungsi dari Return

return berfungsi untuk mengakhri eksekusi dari function tersebut, dan return juga dapat memberikan nilai pada saat akhir dari function kepada pemanggil.

Bentuk penulisan

return; //pengembalian tanpa nilai.
return nilai;//pengembalian dengan nilai.

Contoh penulisan

//pengembalian tanpa nilai
return;

//pengembalian dengan nilai
return true;
return myVar;
return “belajarcpp.com”;
return 6+myVar/5;

Function memiliki dua jenis, yaitu function yang tidak mengembalikan nilai dan function yang dapat mengembalikan nilai pada pemanggil. Dan return adalah keyword untuk mengatur hal tersebut.

Function tidak mengembalikan nilai

Function yang tidak mengembalikan nilai biasanya menggunakan return type yang bertipe void.

Contoh Program

#include <iostream>
#include <string>
using namespace std;

void hallo(string a=""){
    if(a == ""){
        return;
    }
    cout<<"Hallo "<<a<<" !"<<endl;
}

int main(){
    hallo();
    return 0;
}

Saat CPU mendapatkan pernyataan return, CPU akan keluar dari function itu dan akan mengabaikan segala hal, meskipun setelah pernyataan tersebut masih terdapat banyak pernyataan lain.

Pada contoh program di atas, terjadi pemanggilan function hallo() dengan menggunakan satu parameter string, lalu pada function tersebut terdapat penyeleksian untuk memeriksa nilai dari parameter. Lalu dibawahnya terdapat pernyataan keluaran.

Jadi jika pengguna memanggil dan memberikan argument yang tidak kosong maka akan program tersebut akan mengeluarkan keluara “hallo ” di ikuti dengan nilai argument yang pengguna berikan.

Tapi jika kosong maka CPU akan meloncati dan mengabaikan pernyataan keluaran tersebut, alhasil pada program tidak akan menampilkan keluaran apapun.

Function yang mengembalikan nilai

Dan jenis dari function yang lain adalah Function yang dapat mengembalikan nilai. Setiap function yang bukan function dengan return type void merupakan function yang dapat mengembalikan sebuah nilai kepada pemanggil.

Contoh program

#include <iostream>
#include <string>
using namespace std;

string hallo(string a=""){
    return "Hallo "+a+" !";
}

int main(){
    cout<<hallo("Belajar C++");
    return 0;
}

Untuk mengembalikan nilai kepada pemanggil kita bisa melakukanya dengan memberikan data, string, konstanta, identitas variabel, ekspresi dan lain-lain yang memiliki nilai. Pemberian nilai tersebut diletakan sesudah keyword return.

Tapi saat kita akan mengembalikan nilai, kita harus melihat dan menyesuaikan return type apa yang function itu gunakan, pemberian data dan return type pada function harus sesuai.

Pada contoh di atas, terdapat function kustom dengan return type string dan memiliki 1 parameter yang yang juga merupakan string.

Saat program di eksekusi akan menghasilkan keluaran yang berupa pernyataan String “Hallo ” dan dikuti dengan nilai argument yang diberikan saat pemanggilan function.

Contoh program

 #include <iostream>
using namespace std;

double luasLingkaran(double r=0){
    if(!r){
        cout<<"Anda tidak memasukan argument r."<<endl;
        return 0;
    }

    const double pi = 3.14159265358979323846;
    return pi*r*r;
}

int main(){
    cout<<luasLingkaran(3);
    return 0;
}

Di atas adalah contoh program yang dapat menghitung luas dari lingkaran.

Pada function yang dapat mengembalikan nilai. nilai dari function yang kita panggil dapat kita abaikan. kita tidak diharuskan untuk mengambil nilai yang diberikan oleh function, yang kita panggil.

#include <iostream>
using namespace std;

int hitungan(){
    return 9+6;
}

int main(){
    hitung(); //nilai yang dikembalikan diabaikan
}

hal tersebut pada program di atas dapat dilakukan, dan tidak berdampak buruk pada proses kompilasi dan kerja program kita.

Kebenaran yang lainya yang perlu anda tau adalah, bahwa setiap function yang menggunakan return hanya dapat mengembalikan satu nilai kepada pemanggil.

Dalam pengembalian nilai sendiri kita dimungkinkan menggunakan beberapa metode, mirip seperti saat pemberian argument kepada function parameter. Metode-metode yang dapat dilakukan pada saat pengembalian nilai adalah return by value, return by reference dan return by address.

Secara teori metode-metode pada return mirip dengan pemberian argument pada function parameter.

Apa arti dari return 0; pada function utama int main () ?

Pada dasarnya function yang memiliki return type selain void akan selalu mengembalikan nilai, secara default akan mengembalikan nilai 0 atau NULL saat programmer tidak menyertakan pernyataan return pada function tersebut.

Function utama pada Bahasa pemrograman C/C++ selalu menggunakan integer sebagai return type, dan kita harus tau bahwa pernyataan di atas, perlakuan selalu mengembalikan nilai 0 atau NULL secara default, tidak berlaku pada Function utama. dan itu adalah alasan kenapa kita harus menyertakan pernyataan return 0;.

return 0; sendiri memiliki arti untuk komputer kita. Setelah program kita selesai di kompilasi, dan saat CPU memulai mengeksekusi program kita, CPU akan selalu memulai pada function utama dan berakhir pada function utama, yaitu int main();.

Apa yang terjadi adalah, untuk mengeksekusi program kita, CPU akan memanggil function utama, dan pada saat program berakhir, program juga akan menyertakan nilai yang dikembalikan oleh function utama. biasanya program anda memberikan nilai 0 kepada CPU. nilai 0 tersebut memiliki arti berbeda pada CPU, yaitu program anda memberikan informasi kepada CPU bahwa program anda telah berjalan dengan baik.

Secara default CPU akan menganggap suatu program telah berjalan dengan baik jika mereka mengembalikan nilai 0 yang dilakukan oleh pernyataan return 0.

Jika program mengembalikan nilai selain 0, maka menyatakan informasi kepada CPU bahwa program berakhir dengan tidak wajar.


One Reply to “Fungsi dari Return pada Function”

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *