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.
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…