http://en.wikipedia.org/wiki/Comma_operator: C ve C++ programlama dillerinde
, (jeton ,
ile temsil edilen), virgül operatörü onun birinci işlenen değerlendirir ve sonucu atar bir ikili operatör ve sonra değerlendirir ikinci işlenen ve bu değeri (ve türü) döndürür. senin ilk if
yılında
:
if (a, b)
a
ilk değerlendirilir ve atılır, b
ikinci değerlendirilir ve Yani bu durum yanlıştır 0 olarak döndürülür. senin ikinci if
yılında
:
if (b, a)
b
ilk değerlendirilir ve atılır, a
ikinci değerlendirilir ve Yani bu koşul doğruysa 1 olarak döndürülür. İkiden fazla işlenen de varsa
, son ifadesi iade edilecektir. Her iki koşulların doğru olmasını istiyorsanız
, kullanmak gerekir && operator:
if (a && b)
Bunu durumda virgül operatörünü kullanıyor biliyorum, henüz sormak gerekir? –
İlk ifadede bir kesme noktası ekleyebilir ve akışı kendiniz görmek için F10 kullanarak program satırını çalıştırabilirsiniz. O virgül tablolara bir dizi noktası olarak görür ama argümanlar biliyorum @DanielFischer – vish213
Ben sezgisel ** evet **, ama seni istiyorum hissetmek? O if' 'içinde bir dizi nokta olup olmadığını söyleyebilir functions.Can için onaylamak. Rüppell'sVulture @ –