অপারেটর, যেগুলির উপর কাজ করার জন্য তিনটি অপারেন্ডের প্রয়োজন হয়, তারা টার্নারি অপারেটর হিসাবে পরিচিত। এটি " দ্বারা প্রতিনিধিত্ব করা যেতে পারে? :”। এটি শর্তসাপেক্ষ অপারেটর হিসাবেও পরিচিত। অপারেটর কর্মক্ষমতা উন্নত করে এবং কোডের লাইন কমিয়ে দেয়।
এখানে সি ল্যাঙ্গুয়েজে টারনারি অপারেটরের সিনট্যাক্স রয়েছে,
Expression1 ? Expression2 : Expression3
এখানে C ল্যাঙ্গুয়েজে Ternary Operators এর একটি উদাহরণ দেওয়া হল,
উদাহরণ
#include <stdio.h> int main() { int a = -1; double b = 26.4231; int c = a? printf("True value : %lf",b):printf("False value : 0"); return 0; }
আউটপুট
True value : 26.423100
অভিব্যক্তি1 সর্বদা মূল্যায়ন করবে যখন অভিব্যক্তি2 এবং অভিব্যক্তি3 অভিব্যক্তি1 এর ফলাফলের উপর নির্ভরশীল। যদি এক্সপ্রেশন 1-এর ফলাফল অ-শূন্য বা নেতিবাচক হয়, তাহলে expression2 প্রদর্শিত হবে, অন্যথায় expression3 প্রদর্শিত হবে।
টারনারি অপারেটরের একটি রিটার্ন টাইপ আছে। রিটার্ন টাইপ এক্সপ্রেশন 2 এর উপর এবং এক্সপ্রেশন 3 থেকে এক্সপ্রেশন 2 এর পরিবর্তনযোগ্যতার উপর নির্ভর করে। যদি তারা রূপান্তরযোগ্য না হয়, কম্পাইলার একটি ত্রুটি নিক্ষেপ করবে।
এখানে C ল্যাঙ্গুয়েজে টারনারি অপারেটরের আরেকটি উদাহরণ দেওয়া হল,
উদাহরণ
#include <stdio.h> int main() { int x = -1, y = 3; double b = x+y+0.5; int c = x<y? printf("True value : %lf",b):printf("False value : 0"); return 0; }
আউটপুট
True value : 2.500000