عملگر ها در سی شارپ

عملگر ها در سی شارپ (#C)

در مقالات قبل با زبان سی شارپ و مفاهیم مقدماتی در این زبان آشنا شدیم. در این بخش از آموزش قصد داریم با عملگر ها در سی شارپ (#C) بیشتر آشنا شویم. عملگر در واقع یک نماد یا symbol است که به کامپایلر می فهماند باید عملیات خاصی انجام شود. عملگر ها در سی شارپ (#C) در دسته های مختلف تقسیم بندی می شوند که در ادامه به بررسی این متغیرها می پردازیم.

انواع عملگر ها در سی شارپ (#C) عبارتند از:

عملگر های حسابی:

انواع عملگر های حسابی به همراه توضیح و مثال در جدول زیر ذکر شده است. در تمامی مثال های این جدول فرض کردیم: A = 10  و B = 20 باشد.

عملگر های رابطه ای:

در جدول زیر عملگر های رابطه ای به همراه توضیح و مثال ذکر شده است. در تمامی مثال های این
جدول فرض کردیم: A = 10  و B = 20 باشد.

عملگر های منطقی:

در جدول زیر عملگر های منطقی به همراه توضیح و مثال شرح داده شده اند. در تمامی مثال های این
جدول فرض کردیم: A = true و B = false باشد.

عملگر های بیتی:

عملگر های بیتی تنها روی یک بیت اعمال می شوند. جدول درستی برای دو عملوند p و q بصورت زیر است:

مثالی از عملگر های بیتی (bitwise):

فرض کنید:

A = 0011 1100 یا A = 60

B = 0000 1101 یا B = 13

در این حالت داریم:

A & B = 0000 1100

A | B = 0011 1101

A ^ B = 0011 0001

~A = 1100 0011

عملگر شیفت به چپ باینری:

این عملگر با علامت >> مشخص می شود. برای مثال داریم:

A << 2   => 240   => 1111 0000

عملگر شیفت به راست باینری:

این عملگر با علامت >> مشخص می شود. برای مثال داریم:

A >> 2   => 15   => 0000 1111

عملگر های انتساب

انواع عملگر های انتساب به همراه توضیح و مثال در جدول زیر شرح داده شده اند.

عملگر های miscellaneous

مثال هایی از این نوع عملگر ها:

sizeOf(int)   => 4

که سایز یک نوع داده را بر می گرداند.

typeOf(StreamReader)

که نوع یک کلاس را بر می گرداند.

?:

عبارت شرطی است، درصورتی که true باشد مقدار اول و در غیر اینصورت مقدار دوم را بر می گرداند.

اولویت عملگر ها در سی شارپ (C#)

اولویت عملگر ها یا به عبارتی تقدم برخی عملگر ها نسبت به دیگری باید در محاسبات در نظر گرفته
شود.

تقدم عملگر ها در مقدار محاسبه شده ی یک عبارت تاثیرگذار است. برخی عملگر ها نسبت به برخی دیگر اولویت دارند. برای مثال اولویت عملگر ضرب بیشتر از عملگر جمع است.

برای مثال در عبارت زیر داریم:

X = 7 + 3 * 2

حاصل عبارت بالا 13 است نه 20.

درصورتی که تقدم در نظر گرفته نشود حاصل عبارت 20 می شود. زیرا ابتدا مقدار 3 + 7 محاسبه می شود و سپس 2 * 10، در نتیجه مقدار X = 20 می شود.

اولویت عملگر ها به ترتیب زیر می باشد: (از بالاترین اولویت به پایین ترین اولویت)

در تمامی عملگر های بالا به جز موارد ستاره دار (*) جهت شرکت پذیری چپ به راست است. در
موارد ستاره دار (*) جهت شرکت پذیری راست به چپ است.