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

  • ArkticPlanet

    ArkticPlanet

    9 ŞUBAT 2010
  • Defence Videos

    Defence Vide

    13 Mayıs 2013
  • ItZWaffleS420

    ItZWaffleS42

    9 EYLÜL 2011