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

  • curioustravelers

    curioustrave

    12 AĞUSTOS 2006
  • ETrade Supply

    ETrade Suppl

    23 Temmuz 2011
  • MusicDeluxeTV

    MusicDeluxeT

    14 Mayıs 2010