SORU
19 EKİM 2011, ÇARŞAMBA


C ne ??!??! operatör?

Buna benzeyen bir C satırı gördüm

!ErrorHasOccured() ??!??! HandleError();

Doğru ve Tamam ' ı çalıştırmak gibi görünüyor derledim. Eğer bir hata oluştu diye kontrol etmek gibi görünüyor, ve eğer varsa, bu işleme. Ama gerçekten ne yaptığını veya ne olduğundan emin değilim. Programcı duygularını ifade hataları hakkında çalışıyor gibi görünüyor.

Asla ??!??! Daha önce herhangi bir programlama dili gördüm, ve her yerde belgelerine bulamıyorum. (Google ??!??!) gibi arama terimleri ile yardımcı olmuyor. Ne işe yarar ve nasıl kod örneği çalışır?

CEVAP
19 EKİM 2011, ÇARŞAMBA


??! | çevirir trigraph. Diyor ki:

!ErrorHasOccured() || HandleError();

olan, kısa devre nedeniyle, eşittir:

if (ErrorHasOccured())
    HandleError();

Bu aldığım yere Guru of the Week (C fiyatları ile ilgili ama burada).

Possible origin of trigraphs veya @DwB olarak daha zor (tekrar) EBCDIC nedeniyle bu açıklamalarda puan. IBM developerworks kurulu 13* *tartışma bu teoriyi destekleyecek gibi görünüyor.

ISO/9899:1999 §5.2.1.1, Dipnot 12 (h/t @Random832) IEC:

Trigraph dizileri Sabit Kod olarak tanımlanmayan karakter girişi etkinleştir ISO/IEC açıklanan yedi-bit US-ASCII kod kümesinin bir alt kümesidir, 646,.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • alexis gillis

    alexis gilli

    23 HAZİRAN 2011
  • Ammine Getahun

    Ammine Getah

    21 HAZİRAN 2011
  • HowcastSportsFitness

    HowcastSport

    11 Mayıs 2011