SORU
29 EYLÜL 2008, PAZARTESİ


İleri C variadic bir fonksiyon çağırma

C, mümkün iletmek için variadic bir fonksiyon çağırma. Gibi

int my_printf(char *fmt, ...) {
  fprintf(stderr, "Calling printf with fmt %s", fmt);
  return SOMEHOW_INVOKE_LIBC_PRINTF;
}

İletme çağırma yukarıda belirtilen şekilde açıkça değil kesinlikle gerekli bu durumda (beri edebilirsin günlük dualar açıdan veya kullanma vfprintf), ama kod üzerinde çalışıyorum gerektirir sarıcı için bazı fiili çalışma, ve yok (ve olamaz ekledi) bir yardımcı işlevi benzer vfprintf.

[Güncelleme: bazı karışıklıklar şimdiye kadar edilen cevaplara göre var gibi görünüyor. Rastgele seçilmiş bir variadic function paketler misiniz general . bu soruyu başka bir şekilde ifade etmek için: ben^>bu işlevin tanımını değiştirmeden.]

CEVAP
29 EYLÜL 2008, PAZARTESİ


Eğer bir işlevin bağımsız değişken bir sayı yerine va_list alır vfprintf benzer yok eğer değilbunu yapamazsın. http://c-faq.com/varargs/handoff.html bkz.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Caramthros

    Caramthros

    10 AĞUSTOS 2007
  • InsideBlackBerry

    InsideBlackB

    14 Aralık 2009
  • Lin Steven

    Lin Steven

    17 EKİM 2006