referans ile çağırma (call by reference)

Bir fonksiyonun pointer marifetiyle çağrılmasıdır. Örneğin C dilinde:

int fonksiyon(int *a){
a++;
}

şeklinde yazılmış bir fonksiyon, main() fonksiyonundan çağrılırken:

int main(){
int *x=10;
fonksiyon(x);
printf(“%d”,*x);
}

şeklinde çağrılırsa bu durumda x pointer’ının referansı fonksiyona geçirilmil olur. Referansın geçmesi aslında x pointer’ının adresinin fonksiyonda bulunan a değişkeni tarafından da gösterilmesi demektir. Yani a değişkeninin üzerinde yapılan her değişiklik, x değişkeni için de geçerli olacaktır.
Yukarıdaki örnek kod için x değişkeninin değeri, ekranda 11 olarak görülür, çünkü bu göstericinin (pointer) gösterdiği değer fonksiyon içinde değişime uğramıştır.

Örnek kodun tamamı:
#include
int fonksiyon(int *a){
*a=15;
}

int main(){
int *x;
int a = 10;
x=&a;
fonksiyon(x);
printf(“%d”,*x);
return 0;
}

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir