Proje kaynak dosyalardan birinde, bu C işlev tanımını buldum:
int (foo) (int *bar)
{
return foo (bar);
}
Not: yanında yıldız işareti yoktur foo, bu nedenle bir işlev işaretçisi değildir. Yoksa öyle mi? Burada özyinelemeli çağrıda neler oluyor?
a(b);? bBir değişken türü olarak beyan a? Ya ada argümanla işlev çağrısı b? Fark sözdizimseldir ve bildirim bilgisine bakmadan bile ayrıştırmanın hangi yolunu bilemezsiniz a; yani bu postfix işlevi çağrı parantezleri veya bir bildirici çevresindeki isteğe bağlı parantezlerdir.