SORU
30 Temmuz 2010, Cuma


C için yararlı GCC bayrakları

-Wall, ayarı ve gerçekten yararlı, ama daha az bilinen diğer derleyici bayrakları ne -std=XXX, ayarı ötesi yok C kullanım için?

Herhangi bir Ek uyarılar özellikle ilgimi çekti, ve/veya bazı durumlarda hatalar uyarılar kesinlikle herhangi bir kaza sonucu yazın en aza indirmek için dönüm uyuşmazlığı.

CEVAP
31 Temmuz 2010, CUMARTESİ


Benimkiler şöyle:

  • -Wextra, -Wall: önemli.
  • Genellikle eşitlik için kayan nokta sayılar test kötü olduğu için yararlı. -Wfloat-equal:
  • -Wundef: Eğer başlatılmamış bir tanımlayıcı #if bir Direktif olarak değerlendirilir uyar.
  • -Wshadow: gölgeler bir yerleşik işlevi, her bir yerel değişken, parametre ya da global değişken veya gölgeli olduğunda uyar.
  • -Wpointer-arith: Eğer bir şey void bir işlevin veya boyutuna bağlıdır uyar.
  • -Wcast-align: bir işaretçi hedef gerekli uyumu artar böyle atıldı. ne zaman uyar Örneğin, eğer char * int * tamsayılar sadece iki veya dört bayt ulaşılabilir makinelerde sınırları bir atama varsa uyar.
  • -Wstrict-prototypes: eğer bir fonksiyon veya değişken türlerini belirtmeden ilan tanımlanır uyar.
  • -Wstrict-overflow=5: derleyici optimize taşma imzalı varsayımına dayanarak oluşmaz durumlar hakkında sizi uyarır. (Değer 5 çok sıkı, kılavuz sayfasına bakınız olabilir.)
  • -Wwrite-strings: dize sabitleri 16**. tip ver ^em>uzunluğuOlmayanconst char * işaretçi bir adresi kopyalama bir uyarı alacak, böylece ].
  • -Waggregate-return: eğer dönüş yapıları veya sendikalar tanımlanan veya çağrılan tüm işlevleri uyar.
  • -Wcast-qual: bir gösterici hedef türünden bir tür niteleyici kaldırmak için döküm zaman uyar*.
  • -Wswitch-default: switch bir açıklama default bir şey yok ne zaman uyar*.
  • -Wswitch-enum: switch ifadesi sayılan türde bir dizin var ve bu numaralandırma adlı kodlarından birini veya daha fazlasını case bir yoksun zaman uyar*.
  • -Wconversion: bir değeri değiştirebilir örtülü dönüşüm için uyarmak*.
  • -Wunreachable-code: eğer derleyici bu kodu asla yürütülür algılarsa uyar*.

O işaretli*bazen çok fazla sahte uyarılar vermek, onlara gerektiğinde olarak kullanıyorum.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bryan Adams

    Bryan Adams

    30 Mart 2006
  • Dan Gately

    Dan Gately

    13 AĞUSTOS 2006
  • Study with Substance P

    Study with S

    31 Mayıs 2008