SORU
13 HAZİRAN 2013, PERŞEMBE


Neden memset üzerinde bzero kullanmak?

Bir sistem Programlama dersi aldım bu önceki dönem geçirdik uygulamak için bir temel istemci/sunucu C. ne Zaman başlatılıyor yapılar, gibi sock_addr_in veya char tamponlar (kullandığımız gönder veri ileri geri arasında istemci ve sunucu) Profesör talimat bize sadece kullanmak bzero memset başlatılamıyor. Hiç neden açıkladı, ve eğer bunun için geçerli bir sebebi varsa merak ediyorum?

Görüyorum burada: http://fdiv.net/2009/01/14/memset-vs-bzero-ultimate-showdown bzero daha verimli olması nedeniyle aslında bu sadece hiç olacak sıfırlama bellek, yani mecbur değil, herhangi bir ek kontrol memset olabilir. Yine de mutlaka ve mutlaka hafıza sıfırlama memset kullanmak için iyi bir neden gibi ama görünmüyor.

bzero itiraz kabul edilir ve ayrıca bir standart C fonksiyonu. Manuel, memset göre *bu nedenle 8* tercih. Neden hala memset bzero kullanmak isteyesin ki? Bu verimlilik artışı için, yoksa daha fazlası mı? Aynı şekilde, yeni programlar için fiili tercih yapmak bzero memset avantajları nelerdir?

CEVAP
13 HAZİRAN 2013, PERŞEMBE


memset bzero tercih için herhangi bir neden göremiyorum.

memset bzero asla C standart bir fonksiyonu olsa da standart bir C fonksiyonudur. Gerekçesi tam olarak aynı işlevselliği memset fonksiyonu kullanarak elde edebilirsiniz, çünkü muhtemelen.

Verimlilik konusunda, gcc gibi Derleyiciler 0 sabit algılandığında belirli bir uygulama için geçiş memset yerleşik uygulamaları kullanın. Yerleşiklere devre dışı bırakıldığında glibc için aynı.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • KliptOut KwazeeKilla

    KliptOut Kwa

    24 ŞUBAT 2010
  • megablueblaster

    megablueblas

    23 HAZİRAN 2006
  • SegaAmerica

    SegaAmerica

    5 Mart 2008