#include <iostream.h>
char * str_kanan(char*st, int n);
int main() {
int i;
for (i = 1; i < 12; i++)
cout << str_kanan(“Selamat belajar”,i) << “\n”;
return (0);
}
char * str_kanan(char * st,int n) {
int i,indeks,panjang;
static char hasil[80];
panjang = strlen(st);
if (n > panjang)
n = panjang;
i = 0;
for (indeks = panjang – n; indeks < panjang; indeks++){
hasil[i] = st[indeks];
i++;
}
hasil [i] = ”;
return (hasil);
}
==================== Akhir dari Syntax =====================
Pada program di atas,fungsi str_kanan digunakan untuk memperoleh n karakter terkanan pada string argumen st.Mengingat yang dihasilkan adalah string,maka nilai balik fungsi berupa pointer ke string(ditunjukkan dengan char * di depan str_kanan()).Pada keadaan seperti ini,penggunaan variabel yang bersifat statis mutlak diperlukan.Variabel statis adalah varabel yang keberadaannya selalu dibertahankan walaupun pemanggilan fungsi sudah berakhir. Variabel inilah yang menyimpan hasil fungsi str_kanan().Variabel statis dibentuk dengan menyertakan kata kunci static,seperti pada contoh :
static char hasil[80];
merupakan pernyataan untuk mendeklarasikan hasil agar bisa menampung string dengan panjang maksimal 79 dan bersifat statis.Jadi,jika hendak membuat nilai balik berupa string,variabel statis mutlak diperlukan.