35 entry daha
  • c dilinde bir fonksiyonun return degeri sadece bir tane iken pointer'lar sayesinde bunun bokunu cikartabilir hatta ne return degeri lan diyip fonsiyonu void olarak bile yazmaya goturebilirsiniz bu kadar ilginc bir seydir bu pointer algoritmalar icin.

    basit bir örnegi 2 degiskeni degistiren fonksiyondur, bir ara degisken, 2 de degerlerini degistirmek istediginiz degiskeni ,

    long funk(long a, long b)
    {

    long h; (debug watch'ta h abarti bir deger olarak gozukebilir sifirlamaniza gerek yoktur.)

    h = a;
    a = b;
    b = h;

    return (a veya b);

    }

    bu fonksiyonla hemen degistirir ama degerlik olarak sadece a ya da b'yi dondurebilirsiniz.

    halbuki adreslerini gostererek direk adreslerin icine bir takim degerler yolladiginizda main fonksiyonunda a ve b degismis olarak gozukur. fonksiyon da amacli yazilmis olur.

    yani,

    void funk(long *a, long *b)
    {

    long h;

    h = *a;
    *a = *b;
    *b = h;

    }
141 entry daha
hesabın var mı? giriş yap