SORU
27 EYLÜL 2008, CUMARTESİ


&Quot;geri" C nedir ve nasıl uygulanır?

C) üzerinde Objective-C, ve Core Audio programlama yeni duyuyorum. Yaptığım okuma, Core Audio yoğun aramalar (ve C , ama bu başka bir hikaye) dayanır. Kavram (tür) başka bir işlev tarafından sürekli bir görevi yerine getirmek için çağrılan bir fonksiyon kurma anlıyorum. Ben sadece onlar ve onlar gerçekten nasıl çalıştığını anlamıyorum. Herhangi bir örnek duyacağız. Teşekkürler.

CEVAP
27 EYLÜL 2008, CUMARTESİ


"C" C - diğer genel programlama'den fazla kavram. geri arama yok

İşlev işaretçileri kullanarak uygulanan ediyorlar. İşte size bir örnek:

void populate_array(int *array, size_t arraySize, int (*getNextValue)(void))
{
    for (size_t i=0; i<arraySize; i  )
        array[i] = getNextValue();
}

int getNextRandomValue(void)
{
    return rand();
}

int main(void)
{
    int myarray[10];
    populate_array(myarray, 10, getNextRandomValue);
    ...
}

Burada, populate_array işlevin üçüncü parametre olarak bir işlev işaretçisi alır ve tüm değerleri ile bir dizi doldurmak için basın. Geri rastgele gibi gösteren bir değeri döndürür, ve populate_array için bir işaretçi geçti getNextRandomValue, yazdık. populate_array 10 kez geri arama işlevi, arama ve verilen dizideki elemanları verilen değerler atar.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Khan Academy

    Khan Academy

    17 Kasım 2006
  • MrDevin521

    MrDevin521

    18 Temmuz 2010
  • bored before i even began

    bored before

    30 Mart 2009