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

  • atKristaBradford

    atKristaBrad

    4 Aralık 2010
  • inovationgmbh

    inovationgmb

    28 EYLÜL 2010
  • SVB International

    SVB Internat

    29 EKİM 2011