SORU
1 Ocak 2015, PERŞEMBE


Değişkenlerin bildirimi pahalı?

C kodlama yaparken, aşağıdaki durumla karşılaştım.

int function ()
{
  if (!somecondition) return false;

  internalStructure  *str1;
  internalStructure *str2;
  char *dataPointer;
  float xyz;

  /* do something here with the above local variables */    
}

Yukarıdaki kodu if açıklama dikkate işlevi döndürebilir, iki yerde değişkenleri ifade edebilirim.

  1. if deyim önce.
  2. if ifadenin.

Bir programcı olarak, if ifadenin değişken bildiriminde tutmayı düşünüyorum.

Beyan yere bir şey maliyeti nedir? Yoksa başka bir nedeni, başka bir yolu tercih eder?

CEVAP
1 Ocak 2015, PERŞEMBE


C99 ve daha sonra (ya da C89 için ortak uygun bir uzantı ile), bildirileri mix için ücretsiz.

Yalnızca önceki sürümleri (sadece daha çok gibi Derleyiciler var daha akıllı ve daha agresif), derleyici karar verir nasıl tahsis kaydeder ve yığın veya herhangi bir sayıda diğer iyileştirmeleri uygun olarak-varsa-kural.
Bu performans açısından herhangi bir fark hiçbir beklentisi anlamına geliyor.

Her neyseneden böyle bir izin verilmiş değil

Kapsamını daraltan, böyleceiçerik azaltarak bir insan akılda tutmak gerekirve kod yorumlama doğrulanıyor.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Best Quality Cartoons

    Best Quality

    10 ŞUBAT 2014
  • Smith Micro Graphics

    Smith Micro

    15 Mayıs 2008
  • TV nEW

    TV nEW

    25 AĞUSTOS 2012