SORU
9 EYLÜL 2008, Salı


Orada foo(void) ve foo arasında bir fark var mı() C veya C

Bu iki fonksiyon tanımları göz önünde bulundurun

void foo(){}

void foo(void){}

Bu ikisi arasında herhangi bir fark var mı? Neden geçersiz argüman yok? Estetik nedenler?

CEVAP
9 EYLÜL 2008, Salı


Ana nedeni C ve C arasında paylaşılan başlıkları tutarlı yorumlanması elde etmektir .

C:
void foo() demek "fonksiyonu foo belirlenemeyen tür bağımsız değişken sayısı bilinmeyen alma"
void foo(void) demek "fonksiyonu foo hiçbir argüman alacak"

C:
void foo() demek "7 ** bir işlev argüman alacak"
void foo(void) demek "fonksiyonu foo hiçbir argüman alacak"

Yazılı foo(void), Bu nedenle, elde aynı yorumu genelinde her iki dilde ve bizim başlıklar çok dilli (gerçi biz genelde gerek bazı şeyler için başlıklar yapmak onları gerçekten çapraz dil; yani, sarın onları bir extern "C" eğer derleme C ).

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • FattySpins's channel

    FattySpins's

    17 Mayıs 2009
  • FD2097

    FD2097

    21 HAZİRAN 2009
  • friendz.net

    friendz.net

    29 EKİM 2010