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

  • PoreoticsHD

    PoreoticsHD

    22 NİSAN 2010
  • TouchePro

    TouchePro

    27 EYLÜL 2007
  • TV nEW

    TV nEW

    25 AĞUSTOS 2012