SORU
21 AĞUSTOS 2015, Cuma


Neden bu 20 yerine 10 olarak değiştirildi makro?

1. #define NUM 10
2. #define FOO NUM
3. #undef NUM
4. #define NUM 20
5. 
6. FOO

Ben sadece basit çalıştırdığınızda, çıktı dosyası 20 içerir.

Ancak, anladığım kadarıyla, bu kadar basit sadece metin değişikliği yok. Bu bence olay ne belli ki yanlış ama idky):

  1. NUM 10 olarak tanımlanır.
  2. Bu nedenle, hat 2, SAYI 10 olarak değiştirilir. Şimdi elimizde "#FOO 10 tanımla".
  3. SAYI tanımsızdır.
  4. NUM yeniden ve şimdi 20.
  5. FOO çizgisine göre değiştirilir satır önce 4 yeniden tanımlanmasını, 10 2,.

Çıkış 10 yerine 20 olması gerektiğini düşünüyorum. Yanlış bir şey nereye gittiğini açıklayabilir mi?

CEVAP
21 AĞUSTOS 2015, Cuma


Metin değiştirme makro kullanıldığı, #define yazdığın yerde değil yapılır. Kullandığınız noktada FOO, NUM FOO yerine NUM şu anda 20 olarak tanımlanır.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Matt Stokes

    Matt Stokes

    22 Ocak 2008
  • Sergio Lafuente Rubio

    Sergio Lafue

    11 Aralık 2008
  • TV nEW

    TV nEW

    25 AĞUSTOS 2012