এই অধ্যায়ে আপনি অপারেটরসমূহের ক্রম সম্মন্ধে জানবেন। সি প্রোগ্রামে অপারেটরসমূহ পূর্ব নির্ধারিত ক্রম অনুসারে কাজ করে।
সি প্রোগ্রামিং অপারেটর অগ্রাধিকার
অপারেটর অগ্রাধিকার(precedence) সি প্রোগ্রামে কোন অপারেটর আগে এবং কোন অপারেটর পরে কাজ করবে সেই ক্রম নির্দেশ করে। এসোসিয়েটিভিটি(associativity) অপারেটরসমূহ নির্ণয়ের দিক নির্দেশ করে। ইহা বাম থেকে ডানে অথবা ডান থেকে বামে হতে পারে।
চলুন নিচের উদাহরণের সাহায্যে অপারেটর অগ্রাধিকার(precedence) বুঝার চেষ্টা করিঃ
int count=20+20*10;
এখানে count ভ্যারিয়েবলের ভ্যালু 220 কারণ
count = গুণন অপারেটর(20*10) আগে নির্ণয় হয় + যোগ অপারেটর
সি প্রোগ্রামিং এ প্রিসিডেন্স(precedence) এবং এসোসিয়েটিভিটি(associativity) নিম্নের টেবিলে তুলে ধরা হলোঃ
ক্যাটাগরি | অপারেটর | এসোসিয়েটিভিটি |
---|---|---|
Postfix | () [] -> . ++ - - | বাম থেকে ডানে |
Unary | + - ! ~ ++ - - (type)* & sizeof | ডান থেকে বামে |
Multiplicative | * / % | বাম থেকে ডানে |
Additive | + - | বাম থেকে ডানে |
Shift | << >> | বাম থেকে ডানে |
Relational | < <= > >= | বাম থেকে ডানে |
Equality | == != | বাম থেকে ডানে |
Bitwise AND | & | বাম থেকে ডানে |
Bitwise XOR | ^ | বাম থেকে ডানে |
Bitwise OR | | | বাম থেকে ডানে |
Logical AND | && | বাম থেকে ডানে |
Logical OR | || | বাম থেকে ডানে |
Conditional | ?: | ডান থেকে বামে |
Assignment | = += -= *= /= %=>>= <<= &= ^= |= | ডান থেকে বামে |
Comma | , | বাম থেকে ডানে |