কম্পিউটার টিউটোরিয়াল

C/C++ টার্নারি অপারেটর (?:) — সংক্ষিপ্ত শর্তাধীন এক্সপ্রেশন

সংক্ষিপ্ত বিবরণ

টার্নারি অপারেটর তিনটি অপারেন্ড নেয় এবং শর্তানুযায়ী দুটি এক্সপ্রেশনlardan একটি রিটার্ন করে। এটি `if-else` স্টেটমেন্টের সংক্ষিপ্ত রূপ।

সিনট্যাক্স

condition ? expr_if_true : expr_if_false

উদাহরণ: দুটি সংখ্যার মধ্যে বড়টি বের করা

int a = 10, b = 20;
int max = (a > b) ? a : b;  // max = 20

কীভাবে কাজ করে

  1. `a > b` আয়ত্ত করুন → false
  2. অতএব `expr_if_false` অর্থাৎ `b` রিটার্ন হয়
  3. ফলাফল `max`-এ অ্যাসাইন হয়

সি/সি++ কোড

#include <stdio.h>

int main() {
    int a = 10, b = 20;
    int max = (a > b) ? a : b;
    printf("Maximum value = %d\n", max);
    return 0;
}

আউটপুট

Maximum value = 20

সাবধানতা

  • পक्षান্তরভুক্ত এক্সপ্রেশন (side-effect) থাকলে সতর্ক থাকুন
  • নেস্টেড টার্নারি পড়া কঠিন হয় — এড়িয়ে চলুন
  1. C++-এ পয়েন্টার অপারেটর * (ইন্ডিরেকশন)

  2. C++-এ কমা অপারেটর (Comma Operator)

  3. C++-এ টার্নারি অপারেটর (? X : Y)

  4. C#-এ টারনারি অপারেটর