C Programlama soru işareti ve iki nokta kullanımı

therocker13

Hectopat
Katılım
15 Ağustos 2014
Mesajlar
6
Daha fazla  
Cinsiyet
Erkek
Yakın zamanda C Programlama öğrenmeye bağladım. Bugün de farklı örnekler çözerken bir soruda takıldım. Daha önce hiç karşılaşmadığım işaretler ile karşılaştım. Araştırmama rağmen cevap bulamadım. Soru şöyle.
"?" ve ":" ne için kullanılmış, ne işe yarıyor? Yardımcı olursanız sevinirim.

int r(int n)
{
if (n<4) return n<=2?0:1;
return r(n>>2) + ((n%4)<=2?0:1);
}
void main()
{
printf("%d", r(2013));
}
 
(n>>2) + ((n%4) <= 2
bu koşuk sağlanıyorsa 0 döndürür, sağlanmıyorsa 1 döndürür.

bu ? ve : işaretlerinin kullanımı if-else koşulunun tek satır olarak yazılmasıdır.
 
Uyarı! Bu konu 9 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Yeni konular

Geri
Yukarı