باسلام

با قسمت پنجم آموزش سی پلاس پلاس در خدمتتون هستم در این قسمت قصد دارم به عملگر ها در سی پلاس پلاس بپردازم

عملگرد ها نماد هایی هستند که اعمال خاصی را انجام می دهند . به عنوان مثال : نماد " + "عملگری است که دو مقدار را باهم جمع میکند ( عمل جمع را انجام میدهد ) به طور کلی پس از اعلان متغیرها و مقدار دهی به آن ها باید بتوانیم عملیاتی را روی آن ها انجام داد ، برای انجام این عملیات باید از عملگرها استفاده کرد

عملگر ها در زبان سی پلاس پلاس به چند دسته تقسیم میشنوند :


  1. عملگر های محاسباتی
  2. عملگر های رابطه ای
  3. عملگر های منطقی
  4. عملگر های ترکیبی
  5. عملگر های بیتی
  6. عملگر های متفرقه



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

عملگر نام
مثال
- تفریق x - y
+ جمع x + y
* ضرب x * z
/ تقسیم x / z
% باقیمانده تقسیم x % j
-- کاهش x-- یا --x
++ افزایش y-- یا --y




یکی از نکته های بسیار مهمی که در بحث عملگر ها میتونم به آن اشاره کنم ، تقدم عملگر های محاسباتی و شرکت پذیری عملگر ها می باشد ، بهتره با یک مثال ساده توضییح بدهم

به نظرم شما حاصل این عبارت چه خواهد بود ؟
کد:
int x=3,y=6,k=12,j;
j= x + y / 3 * k;

اگر ابتدا " x " را با " y " جمع شود و سپس تقسیم بر " 3 " شود و سپس با " k " ضرب شود حاصل 36 خواهد بود

و یا اگر ابتدا " y " بر " 3 " تقسیم شود و در " k " ضرب شود و سپس حاصل با " x " جمع شود ، حاصل 27 خواهد بود

اما کدام پاسخ درست است ؟ !!!

برای یافتن پاسخ باید به نکته زیر توجه کنیم :

نکته مهم : وقتی در عبارتی چندین عملگر با هم ترکیب میشوند ، ترتیب اجرای آن ها با دو ویژگی زبان برنامه سازی سی پلاس پلاس تغیین میشود :



  1. تقدم عملگر ها
  2. شرکت پذیری عملگر ها



1) تقدم عملگر ها را میتوانید در جدول زیر مشاهده کنید

بالاترین تقدم ( ++ ) و ( -- )
- (منهای یکانی)
( % ) و ( / ) و ( * )
پایین ترین تقدم ( - ) و ( + )




2) تقدم عملگر هایی که تقدم آن ها یکسان است مثل ( + ) ، ( - ) ، ( % ) ، ( / ) یا ( * ) ترتیب اجرای آن ها براساس قاعده شرکت پذیری زبان سی پلاس پلاس تعیین می شود که در سی پلاس پلاس از چپ به راست می باشد ، یعنی وقتی دو عملگر با تقدم یکسان به طور متوالی قرار گیرند عملگر سمت چپ زودتر انجام میشود

در نتیجه طبق توضیحات فوق در مثال بالا " ابتدا " y " بر " 3 " تقسیم شود و در " k " ضرب شود و سپس حاصل با " x " جمع شود ، حاصل 27 خواهد بود " صحیح می باشد


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

عملگر ها
نام مثال
< بزرگتر x > y
> کوچکتر y < x
=< بزرگتر یا مساوی x >= y
=> کوچکتر یا مساوی y <= x
== متساوی x == y
=! نامساوی x != y



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

عملگر های منطقی به ترتیب تقدم ( ترتیب قرار گرفتن آن ها در جدول از تقدم بالا به پایین است )

عملگر نام مثال
! نقیض (not) x!
&& و (and) x > y && m > p
|| یا ( or ) x > y || m > p


امیدوارم از این بخش از آموزش نیز لذت برده باشید